Php function ereg_replace is deprecated Hatası ve Çözümü
Function ereg_replace is deprecated hatası alıyorsanız kodlarınız biraz eskimiş demektir. Yani Php 5.3 ve üstü kullanmaya başladıysanız bu kod artık güncelliğini yitirmiş demektir.
Çözümü:
- İlk önce php’nin size söylemiş olduğu dosya ve satırı bulun. Örn: index.php on line 127
Bu açıklama hatanın çıktığı sayfada detaylı bir şekilde yazacaktır. - İlgili dosyayı açıp, bahsi geçen satırı bulun.
- Şu kodları bulun ereg, eregi, ereg_replace, eregi_replace
Çünkü Bu kod türlerinin hepsi değişti. - Kod yapınıza göre şu düzenlemeleri yapın:
ereg
Öncesi:
ereg('\.([^\.]*$)', ***;
Yeni Hali:
preg_match('/\.([^\.]*$)/', ***;
ereg kodunu preg_match olarak değiştirip karakterlerin başına ve sonuna / işareti (bölü, ayraç vs) ekliyorsunuz.
ereg_replace
Öncesi:
ereg_replace('[^A-Za-z0-9_]', ***;
Yeni Hali:
preg_replace('/[^A-Za-z0-9_]/', ***;
ereg_replace kodunu preg_replace olarak değiştirip karakterlerin başına ve sonuna / işareti (bölü, ayraç vs) ekliyorsunuz.
eregi
Öncesi:
eregi('\.([^\.]*$)', ***;
Yeni Hali:
preg_match('/\.([^\.]*$)/i', ***;
eregi kodunu preg_match olarak değiştirip karakterlerin başına / işareti (bölü, ayraç vs) ve sonuna / işaretiyle birlikte i harfi ekliyorsunuz.
eregi_replace
Öncesi:
eregi_replace('[^0-9A-Za-z]', ***;
Yeni Hali:
preg_replace('/[^0-9A-Za-z]/', ***;
eregi_replace kodunu preg_replace olarak değiştirip karakterlerin başına ve sonuna / işareti (bölü, ayraç vs) ekliyorsunuz.
Ayrıca:
Birden fazla // işaretiyle işiniz varsa # (hash) karakterini kullanabilirsiniz.
Kaynak: Fix ereg deprecated errors in Php