我该如何解决“已弃用:函数 eregi() 已弃用”错误

发布于 2024-10-30 23:51:40 字数 220 浏览 2 评论 0原文

我正在使用 php 5.3.0 并且我正在使用 wamp 服务器 函数是这样的

eregi("^[ \f\r\t\n]{0,}(SELECT){1}(.+)$",$this->ss_last_query)  
eregi("^[ \f\r\t\n]{0,}(UPDATE|INSERT|DELETE){1}(.+)$",$this->ss_last_query)

i am using php 5.3.0 and i am use wamp server
function is like that

eregi("^[ \f\r\t\n]{0,}(SELECT){1}(.+)$",$this->ss_last_query)  
eregi("^[ \f\r\t\n]{0,}(UPDATE|INSERT|DELETE){1}(.+)$",$this->ss_last_query)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

橘和柠 2024-11-06 23:51:40

两个选项

  1. 不要使用 ereg* 函数(使用 PCRE 套件
  2. 禁用 E_DEPRECATED 错误报告。请参阅 error_reporting()

最好的选择是#1 因为整个 POSIX 扩展套件将在未来版本中删除。

我无法理解人们怎么还在使用这个。多年来它一直被标记为移除。更不用说之前被弃用的“这些功能很差劲!”警告持续时间更长。

Two options

  1. Don't use the ereg* functions (use the PCRE suite instead)
  2. Disable E_DEPRECATED error reporting. See error_reporting()

The best option is #1 as the entire POSIX Extended suite will be removed in a future version.

I can't comprehend how people are still using this. It's been marked for removal for years. Not to mention the pre-deprecated "These functions are inferior!" warning that was up for even longer.

给妤﹃绝世温柔 2024-11-06 23:51:40

preg_match一起使用i 修饰符,指定您希望与正则表达式进行不区分大小写的匹配。

所以你想要:

preg_match("/regexhere/i", $str);

Use the preg_match with the i modifier, which specifies that you want a case insensitive match with your regex.

So you want:

preg_match("/regexhere/i", $str);

清醇 2024-11-06 23:51:40
error_reporting(E_ALL ^ E_DEPRECATED);

如果你必须使用 eregi,但是...

preg_match("/^[ \f\r\t\n]{0,}(UPDATE|INSERT|DELETE){1}(.+)$/is", $this->ss_last_query)

应该也可以。

error_reporting(E_ALL ^ E_DEPRECATED);

If you must use eregi, but...

preg_match("/^[ \f\r\t\n]{0,}(UPDATE|INSERT|DELETE){1}(.+)$/is", $this->ss_last_query)

should also work.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文