Function eregi is deprecated (解决方法)

yipeiwu_com6年前PHP代码库
在php升级到php5.3之后后,在使用的过程经常发现有的程序会出现Function eregi() is deprecated 的报错信息。是什么原因呢?
这是因为php5.3中不再支持eregi()函数,而使用preg_match()函数替代。
解决的方法是:将eregi()函数替换成preg_match() 函数。
 if(eregi('^test',$file))
可以替换为
if(preg_match('/^test/i',$file))
 
————-
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()
* eregi_replace() → preg_replace()
* eregi() → preg_match()
* split() → preg_split()
* spliti() → preg_split()
* sql_regcase() → No equivalent
* 需要 regex 的 split, 可用 preg_split() 代替
* 不需要 regex, 只要要快速分割固定的字串, 可用 explode() 代替. (速度會比需要 regex 的快很多)

相关文章

PHP 程序授权验证开发思路

以下是我的一个想法,把服务器的php环境配置也应用在程序里面,生成一个许可字串,然后将字串写入到许可的文件代码中。就算是将程序原本不动地移到其它服务器上,程序都不能运行了。希望大家多多讨...

php格式输出文件var_export函数实例

本文实例讲述了php格式输出文件var_export函数的用法。分享给大家供大家参考。具体如下: var_export:php 4 >= 4.2.0, php 5 var_expo...

PHP的swoole扩展安装方法详细教程

PHP的swoole扩展安装方法详细教程

Swoole支持PHP 5.3.10以上版本,所以安装Swoole之前请先安装PHP 5.3.10以上版本,现在来介绍Windows下PHP安装配置方法。 软件版本:php-5.3.1-...

PHP实现格式化文件数据大小显示的方法

本文实例讲述了PHP实现格式化文件数据大小显示的方法。分享给大家供大家参考。具体分析如下: 有时候我们需要在网页上显示某个文件的大小,或者是其它数据的大小数字。 这个数字往往从跨度很大,...

PHP使用curl_multi_select解决curl_multi网页假死问题的方法

本文实例讲述了PHP使用curl_multi_select解决curl_multi网页假死问题的方法。分享给大家供大家参考,具体如下: curl_multi可以批处理事务,给网页编程带来...