幫助中心
這里有最新的使用文檔和教程
在 php5.3環(huán)境下運(yùn)行oscommerce,常常會(huì)出現(xiàn)Deprecated: Function ereg() is deprecated in...和Deprecated: Function ereg_replace() is deprecated in...這些類型的報(bào)錯(cuò)提示。
其原因在于:php5.3以上的版本不支持ereg()函數(shù),而是使用preg_match()函數(shù);不支持ereg_replace()函數(shù),而使用preg_replace()函數(shù)。
解決方法一:退回去用php5.2
解決方法二:繼續(xù)用php5.3,但是修改devel/devel.modul的460行:if ($errno &
(E_ALL ^ E_NOTICE)) {改為if ($errno &
(E_ALL&~E_NOTICE&~E_DEPRECATED)) }把 deprecated錯(cuò)誤給忽略掉
解決方法三:將不支持的函數(shù)修改為支持的函數(shù)即可。
例如:
Deprecated: Function eregi() is deprecated in D:\www\oscommerce\catalog\includes\classes\language.php on line 87
那么,將87行的
if(eregi('^(' . $value . ')(;q=[0-9]\\.[0-9])?$', $this->browser_languages[$i])
改為:
if(preg_match('/^(' . $value . ')(;q=[0-9]\\.[0-9])?$/i', $this->browser_languages[$i])
再例如:
Deprecated: Function ereg_replace() is deprecated in C:\wamp\www\includes\functions\general.php on line 61
那么,將61行的
$string = ereg_replace(' +', ' ', trim($string));
改為:
$string = preg_replace('{ +}', ' ', trim($string));
如此類推,其它類似的錯(cuò)誤也可以按照上面兩個(gè)函數(shù)的語法來做修改。