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ü:

  1. İ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.
  2. İlgili dosyayı açıp, bahsi geçen satırı bulun.
  3. Şu kodları bulun ereg, eregi, ereg_replace, eregi_replace
    Çünkü Bu kod türlerinin hepsi değişti.
  4. 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