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

问题缘由:网站刚更换了服务器,php之前用的isapi模式,如今用的php 5.3.6.0的Fast CGI模式。php

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

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

* 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下ui

方法二:spa

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

;mbstring.func_overload = 0
修改成:
mbstring.func_overload = 7
 it

方法三:

修改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__) ) );

建议使用方法三中的  !

相关文章
相关标签/搜索