php Function ereg() is deprecated的解决方法

PHP 5.3 ereg() 无法正常使用,提示“Function ereg() is deprecated Error”。问题根源是php中有两种正则表示方法,一个是posix,一个是perl,php6打算废除posix的正则表示方法所以后来就加了个preg_match。此问题解决办法很简单,在ereg前加个过滤提示信息符号即可:把ereg()变成@ereg()。这样屏蔽了提示信息,但根本问题还是没有解决,php在5.2版本以前ereg都使用正常,在5.3以后,就要用preg_match来代替ereg。所以就需要变成这样,原来:
ereg("^[0-9]*$",$page)
变成:
preg_match("/^[0-9]*$/",$page)

http://www.jinyuanbao.cn
特别提醒:posix与perl的很明显的表达区别就是是否加斜杠,所以与ereg相比,后者在正则的前后分别增加了两个”/”符号,不能缺少。
Tips:此问题在php5.2之前版本不会出现。

时间: 2024-08-03 10:32:35

php Function ereg() is deprecated的解决方法的相关文章

PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法

这篇文章主要介绍了PHP提示Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法,是在进行PHP数据库程序开发中常会遇到的错误,需要的朋友可以参考下 本文实例讲述了PHP提示 Deprecated: mysql_connect(): The mysql extension is deprecated的解决方法,在PHP程序开发中常会遇到这类问题.分享给大家供大家参考,具体的解决方法如下: 将下面代码改为mysqli

PHP:错误 Deprecated: Function split() is deprecated in ... 解决办法

PHP:错误 Deprecated: Function split() is deprecated in ... 解决办法 PHP5.3 split() 不建议使用的原因:PHP 5.3.0 之后的regex, 希望使用PCRE 的规格, POSIX Regex 都不建议使用了(统一Regex, 避免规格太多?). 所以下述是不建议使用的Function (POSIX), 与建议替换成的Function (PCRE) 列表, 详可见: PHP: Differences from POSIX re

php Function split() is deprecated 的解决办法

原文地址: http://www.cnblogs.com/mfryf/archive/2012/05/31/2527307.html php升级为5.3后,程序会报 Function split() is deprecated 的错误.这是因为种种原因(主要是关于正则的原因,具体见后),split这个函数在新版本不支持了.在php中,再使用deprecated的函数会报错,必须改掉.(java里deprecated的函数只是给警告,还可以继续用)改为什么呢? 看第一个参数,如果第一个参数不是正则

php5.3不支持 ereg、ereg_replace等函数问题,如提示:Deprecated: Function ereg() is deprecated

在php5.3中,正则函数ereg_replace已经废弃,而dedecms还继续用.有两个方案可以解决以上问题: 1.把php版本换到v5.3下. 2.继续使用v5.3,修改php.ini文件 ;extension=php_mbstring.dll 改为 extension=php_mbstring.dll ;mbstring.func_overload = 0 修改为: mbstring.func_overload = 7 或者使用其他的函数: define('DEDEADMIN', ere

Function mysql_db_query() is deprecated 错误解决

方法一:@ 在任何错误语句之前加上@符号,即可屏蔽! 方法二:error_reporting 在PHP文件第一行加上:error_reporting(0); 即可屏蔽! 方法三:display_errors 打开php.ini文件,搜索display_errors = on,默认的应该是on,改为off 即可屏蔽! <?php $conn=mysql_connect("localhost", "root", "root"); [email 

出现Deprecated: Function ereg_replace() is deprecated in 的原因及解决方法

在 php5.3环境下运行oscommerce,常常会出现Deprecated: Function ereg() is deprecated in...和Deprecated: Function ereg_replace() is deprecated in...这些类型的报错提示. 其原因在于:php5.3以上的版本不支持ereg()函数,而是使用preg_match()函数:不支持ereg_replace()函数,而使用preg_replace()函数. 解决方法一:退回去用php5.2 解

编绎报错,解决方法objc_msgSend too many arguments to function call,expected 0, have3 (转)

  编绎报错,objc_msgSend too many arguments to function call,expected 0, have3 解决方法:  

MySQL函数不能创建的解决方法

MySQL函数不能创建,是一个很麻烦的问题,下面就为您提供了一个解决此问题的方法,如果您也遇到过类似的问题,不妨一看. http://database.51cto.com/art/201010/229918.htm 在使用MySQL数据库时,有时会遇到MySQL函数不能创建的情况.下面就教您一个解决MySQL函数不能创建问题的方法,供您借鉴参考. 出错信息大致类似: ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO S

安装DEDECMS出现Function ereg_replace()错误的解决方法

这个问题我记得以前有遇到的,是在本地调试dedecms整站程序的时候,从网上下载了一个整套程序包括模板到本地调试,导入数据库安装都正常,但是登陆 后台就出现"Deprecated: Function ereg_replace() is deprecated in"的错误信息,左侧的菜单也无法看到并且打开. 出现这样的问题,不是我们程序的问题,而是数据库兼容问题,可能我们本地的数据库版本和我们导入下来的版本不对.我们可以通过下面的方法解决. 第一步,找到DEDECMS程序的config.