首页 > php教程 > php手册 > 正文

【搜】php升级到5.3产生问题修正积累(不断更新)

WBOY
发布: 2016-06-06 19:45:41
原创
1090 人浏览过

deprecated functions ※POSIX Regex系列 PHP 5.3.0 之后的 regex, 希望使用 PCRE 的规格, POSIX Regex 都不建议使用了(统一 Regex, 避免规格太多?). 所以下述是不建议使用的 Function (POSIX), 与建议替换成的 Function (PCRE) 列表, 详可见: PHP: Differen

 

deprecated functions

※ POSIX Regex系列

PHP 5.3.0 之后的 regex, 希望使用 PCRE 的规格, POSIX Regex 都不建议使用了(统一 Regex, 避免规格太多?).
所以下述是不建议使用的 Function (POSIX), 与建议替换成的 Function (PCRE) 列表, 详可见: PHP:
Differences from POSIX regex
* POSIX → PCRE
* ereg_replace() → preg_replace()
* ereg() → preg_match()
* ereg_replace() → preg_replace()
* eregi_replace() → preg_replace()

此函数为不区分大小写,替换时候改为preg_replace("/原规则/i", ...);即可
* eregi() → preg_match()
* split() → preg_split()
* spliti() → preg_split()
* sql_regcase() → No equivalent
* 需要 regex 的 split, 可用 preg_split() 代替
* 不需要 regex, 只要要快速分割固定的字串, 可用 explode() 代替. (速度会比需要 regex 的快很多)

另:

如果一定要用php5.3,请修改php.ini中下面代码

;extension=php_mbstring.dll 修改为;  extension=php_mbstring.dll

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

 

deprecated grammar

※ Assigning the return value of new by reference is deprecated in

解决办法:php5.3开始后,废除了php中的”=&”符号,所以要想复制,直接用=引用即可。详细如下:

1、PHP5对象复制是采用引用的方式;
2、如果不采用引用方式,则需要在复制对象时加关键字 clone;
3、如果在复制的过程中,同时要变更某些属性,则增加函数_clone();

或是屏蔽错误

 

 

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板