Membenarkan fungsi ereg yang telah ditinggalkan (deprecated) di PHP 5.3
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


about 1 year ago
thx oom chandra
about 1 year ago
sama – sama
about 9 months ago
ini yang ane lagi cari-cari..
makasih bang candra
about 3 months ago
if (ereg(‘http://’, $q) or !file_exists(“$q.php”)) ini scrip saya yang error sudah saya ganti dengan if (preg_match(‘http://’, $q) or !file_exists(“$q.php”)) tapi masih error juga mas,,, erornya “preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash” minta pencerahannya gan
about 1 month ago
coba ganti dengan fungsi berikut :
if (preg_match(‘#http://#’, $q) or !file_exists(“$q.php”))
about 1 month ago
@anggar: coba aja ganti ereg_replace dengan str_replace, mungkin bisa…hehe
about 4 weeks ago
siip trimaksi infonya bermanfaat sekali …