Posts tagged fix
Membenarkan fungsi ereg yang telah ditinggalkan (deprecated) di PHP 5.3
Apr 8th
Jika anda mengupgrade ke PHP 5.3, kemungkinan besar anda akan menemukan beberapa peringatan (warning) dari fungsi-fungsi PHP yang telah ditinggalkan.
Sebagai contoh adalah fungsi ereg dan teman-temannya. Fungsi ini dihilangkan untuk meningkatkan performa kerja serta mengoptimalkan fungsi preg yang kompatibel dengan Perl.
Kejadian ini saya alami ketika menginstall salah satu CMS yang ternyata masih menggunakan fungsi-fungsi ereg, otomatis peringatan muncul dan CMS tidak bisa berjalan dengan sempurna.
Untuk itu saya harus mengubah fungsi ereg dengan preg.
Proses mengubah dari fungsi ereg() :
ereg('\.([^\.]*$)', $source_file, $extension);
menjadi
preg_match('/\.([^\.]*$)/', $source_file, $extension);
Perhatikan bahwa saya menambahkan karakter / pada awal dan akhir pola (\.([^\.]*$)), dimana adalah RegExp delimiters.
Proses untuk mengubah dari fungsi ereg_replace() :
$target = ereg_replace('[^A-Za-z0-9_]', '', $target);
Menjadi
$target = preg_replace('/[^A-Za-z0-9_]/', '', $target);
Perhatikan pattern yang saya tambahkan delimiter /.
Jika anda menggunakan eregi (versi case-sensitive dari ereg), anda tidak bisa mengubahnya ke pregi, karena tidak ada fungsi tersebut.
Untuk menanggulanginya maka dapat dengan cara menambahkan i setelah delimiter pada pola.
eregi('\.([^\.]*$)', $source_file, $extension);
menjadi
preg_match('/\.([^\.]*$)/i', $source_file, $extension);
Have fun with coding 
if you think this article is useful
, please leave a comment.. 
© 2010, Christian Chandra. All rights reserved. Find out more at http://blog.christianchandra.com

