2011-11-21 68 views
3

可能重複:
Converting ereg expressions to preg功能eregi()被廢棄的錯誤在PHP

它我開始在OOPS PHP.I我對誰是由其他人編寫了一個項目工作。當我運行這個project.its告訴我的錯誤是這樣

Deprecated: Function eregi() is deprecated in D:\wamp\www\intranet\calendar.inc.php on line 4 

    Deprecated: Function eregi() is deprecated in D:\wamp\www\intranet\base.inc.php on line 4 

    Deprecated: Function eregi() is deprecated in D:\wamp\www\intranet\includes\setup.inc.php on line 4 

繼續在所有文件........

,當我檢查這行代碼是這樣

if (eregi("calendar.inc.php", $_SERVER['PHP_SELF'])) 
    { 

header("Location: calendar.php"); 
exit; 
     } 

我怎麼能解決這個問題嗎?請幫

+0

見http://stackoverflow.com/questions/737198/good-alternative-to-eregi-in-php的答案 –

+0

當我的preg_match其表演代替eregi me警告:preg_match()[函數.preg-match]:分隔符不能是D行中的字母數字或反斜槓D:\ wamp \ www \ intranet \ calendar.inc.php 4行 警告:preg_match()[function.preg - 匹配]:第4行D:\ wamp \ www \ intranet \ base.inc.php中的分隔符不能是字母數字或反斜線 – omnath

+1

請填寫空格:** O ** bject ** O ** ** ** P * *編程** S ** _______? – Gordon

回答

6

由於錯誤說功能eregi()不再秩序。您必須改變它們才能使用preg_* family

你提供你通過使用preg_match函數解決的例子:

if (preg_match("/calendar\.inc\.php/i", $_SERVER['PHP_SELF'])) {  
    header("Location: calendar.php"); 
    exit; 
} 
+0

是的使用「preg_match」 –

+0

先生這是什麼意思/我「 – omnath

+0

@omnath這意味着匹配是不區分大小寫的。 eregi中的'i'也代表不區分大小寫。 – Marcus

3

eregi已被棄用使用你應該PCRE型正則表達式替換或抑制誤差的error_reporting(E_ALL &〜E_DEPRECATED)報告;不建議。

error_reporting