Eregi fonksiyonu daha çok düzenli ifade ile eşleşen e-posta adresi girişini doğrulamak için kullanılmaktadır. Örneğin ;

<pre>
if(!eregi(“^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$”, $str)) {
$msg = ’email is not valid’;
}
else {
$valid = true;
}</pre>

Bir kod yapımız bulunmakta. Eregi fonksiyonunu PHP’nin yeni sürümüne (PHP 5.3.X) uyarlamak için ;

<pre>
if(!preg_match(“/^[_\.0-9a-zA-Z-]+@([0-9a-zA-Z][0-9a-zA-Z-]+\.)+[a-zA-Z]{2,6}$/i”, $str)) {
$msg = ’email is not valid’;
}
else {
$valid = true;
}</pre>

Şeklinde güncelliyoruz. Burada yapılan değişiklikleri kısaca anlatmak gerekir ise, eski kod yapımızdaki ;

!eregi

Fonksiyonu ;

!preg_match

Olarak değişmekte. !eregi sonrasındaki (“^ bölümünü de (“/^ olarak değiştiriyoruz ve son olarak da $” bölümü $/i olarak değiştiriyoruz.

PHP 5.3 Sonrasında değişen ya da kullanılmayan diğer fonksiyonlar da aşağıdaki gibidir :

  • call_user_method()use call_user_func()
  • call_user_method_array()use call_user_func_array()
  • define_syslog_variables()Kullanımdan kaldırıldı.
  • dl()Kullanımdan kaldırıldı.
  • ereg()preg_match()
  • ereg_replace()preg_replace()
  • eregi()preg_match()
  • eregi_replace()pregi_replace()
  • set_magic_quotes_runtime()magic_quotes_runtime()
  • session_register()$_SESSION
  • session_unregister()$_SESSION
  • session_is_registered()$_SESSION
  • set_socket_blocking()stream_set_blocking()
  • split()preg_split()
  • spliti()preg_split()
  • sql_regcase() – Kullanımdan kaldırıldı.
  • mysql_db_query()mysql_select_db() ya da mysql_query()
  • mysql_escape_string()mysql_real_escape_string()