php5.3提示Function ereg() is deprecated Error问题解决方法,eregdeprecated
本文实例讲述了php5.3提示Function ereg() is deprecated Error问题解决方法。分享给大家供大家参考。具体实现方法如下:
一、问题:
PHP 5.3 ereg() 无法正常使用,提示“Function ereg() is deprecated Error”是因为它长ereg 函数进行了升级处理,需要像preg_match使用/ /来规则了,当然也是php5.3把ereg给废掉的节奏了。
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)
特别提醒:posix与perl的很明显的表达区别就是是否加斜杠,所以与ereg相比,后者在正则的前后分别增加了两个"/"符号,不能缺少。
例如:
改前:
复制代码 代码如下:
function inject_check($sql_str) {
$sql_str = strtolower($sql_str);
return eregi('fopen|post|eval|select|insert|and|or|update|delete|'|/*|*|../|./|union|into|load_file|outfile', $sql_str); // 进行过滤
}
二、解决方法:
找到代码所在的文件位置:
复制代码 代码如下:
function inject_check($sql_str) {
$sql_str = strtolower($sql_str);
return preg_match('/fopen|post|eval|select|insert|and|or|update|delete|'|/*|*|../|./|union|into|load_file|outfile/', $sql_str); // 进行过滤
}
注意:一定要加'/'开头与结束。此段参考:http://www.bkjia.com/article/38857.htm
补充:此问题在php5.2之前版本不会出现。
希望本文所述对大家的PHP程序设计有所帮助。

在使用PHP开发Web应用时,经常会遇到各种各样的问题。其中,一些常见的问题是与MySQL数据库相关的问题。有一种问题是“PHPWarning:mysqli_query():Emptyquery”的错误。本文将介绍此错误的原因以及解决方法。首先,让我们看看这个错误表示什么。当您使用mysqli_query函数执行MySQL查询时,如果该查询为空,则会

在使用PHP进行开发的过程中,有时候会遇到“PHPFatalerror:Cannotredeclare”错误,这个错误通常会出现在如下情况:在PHP代码中多次include/require同一个文件。在代码中定义了和已有的函数/类重名的函数/类。这个错误会导致程序无法继续执行,为了解决这个问题,我们需要了解其产生原因和解决方法。产生原

在使用PHP编写代码时,我们经常会看到这样的错误提示:“PHPNotice:Undefinedproperty:stdClass::$”。这个错误提示通常是由于在使用对象的属性时,该属性不存在而引起的。在本文中,我们将讨论如何解决这个问题。首先,我们需要了解这个错误提示的原因。当我们使用对象的属性时,PHP会首先检查该属性是否存在。如果该属性不存在,

在使用PHP程序开发时,经常会碰到一些警告或者错误的提示信息。其中,可能出现的一个错误提示就是:PHPWarning:date()expectsparameter2tobelong,stringgiven。这个错误的提示信息意思是:函数date()的第二个参数期望是长整型(long),但是实际传递给它的是字符串(string)。那么,我们

当我们在使用PHP进行开发时,有时会遇到”Tryingtogetproperty‘的解决方法’ofnon-object”的错误提示。这个错误的原因一般是因为程序中对一个不存在或者未实例化的对象进行访问,导致了PHP解析器无法识别该对象的属性或方法。那么,如何解决这个错误呢?下面我将为大家介绍几种可能的解决方法。一、检查代码首先,我们需要将出错的代

TranslucentTB是寻求时尚简约桌面外观的Windows11爱好者广泛使用的工具,遇到了障碍。自从发布以来Windows11内部版本22621.1344(22H2)28年2023月日,TranslucentTB对大多数用户不起作用。此错误使用户努力应对其任务栏的有限自定义选项。用户在寻求克服这一挫折的解决方案时,挫败感显而易见。在最近的Windows11更新之后,TranslucentTB无法正常工作的问题已在多个在线平台上广泛报道,包括论坛和社交媒体。用户一直在分享他们的经验,拼命寻找

当使用PHP开发Web应用程序时,经常会遇到“PHPNotice:Undefinedindex:”这样的错误消息。此错误消息通常与数组相关。在PHP中,当我们使用未定义的数组索引时,就会收到这种类型的错误消息。这通常会发生在以下情况下:尝试访问不存在的数组元素尝试使用错误的键来访问数组在本文中,我们将探讨如何解决此错误,并提供一些常见的应用程序开发实践

PHPWarning:array_push()expectsparameter1tobearray的解决方法在PHP开发中,我们常常会遇到“TheWarning:array_push()expectsparameter1tobearray”错误。这个错误通常表示我们使用了一个不是数组的变量作为array_push的第一个参数。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

SublimeText3汉化版
中文版,非常好用