安装dedeCMS出现Deprecated: Function ereg_replace() ...

孤街醉人 提交于 2019-12-05 08:49:13

问题原因:网站刚更换了服务器,php以前用的isapi模式,现在用的php 5.3.6.0的Fast CGI模式。

网上查了下,在php5.3中,正则函数ereg_replace已经废弃,而dedecms还继续用,这里的这个错误原因就是函数ereg_replace在 PHP5.3 中已经不建议使用了。

下述是不建议使用的Function (POSIX), 与建议替换成的Function (PCRE) 列表, 详可见: PHP: Differences from POSIX regex

* POSIX → PCRE
* ereg_replace() → preg_replace()
* ereg() → preg_match()
* eregi_replace() → preg_replace()
* eregi() → preg_match()
* split() → preg_split()
* spliti() → preg_split()
* sql_regcase() → No equivalent

解决方法:

方法一:

把php版本换到v5.3下

方法二:

继续使用v5.3,修改php.ini文件
;extension=php_mbstring.dll
改为
extension=php_mbstring.dll

;mbstring.func_overload = 0
修改为:
mbstring.func_overload = 7
 

方法三:

修改dedeconfig.php
 第二行内容
 define('DEDEADMIN', ereg_replace("[/\\]{1,}", '/', dirname(__FILE__) ) );
 为下面任意一个

①define('DEDEADMIN', str_replace("\\", '/', dirname(__FILE__) ) );

②define('DEDEADMIN',strtr(dirname(__FILE__),'\\/','//'));

③define('DEDEADMIN', preg_replace("/[\/\\\\]{1,}/", "/", dirname(__FILE__) ) );

建议使用方法三中的  !

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!