PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了php-从eregi到preg_match大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我已经将PHP升级到5.3,所以我需要将正则表达式更改为preg_match.我已经成功地使用定界符对脚本进行了少量更改,并将正则表达式更改为preg_match,但是我对以下代码感到震惊,尽管我没有收到任何错误cookie,但仍尝试以以下方式进行更改:

if (preg_match('#COOKIE_PREFIX#i', $key))

原始代码

   // destroys the session cookies
function destroy($hash)
{
    foreach ($_COOKIE as $key => $value)
    {
        if (eregi(COOKIE_PREFIX, $key))
        {
            $key = str_replace(COOKIE_PREFIX, '', $key);
            xtsetcookie($key, '');
        }
    }
    $this->userinfo['user_id'] = 0;
}

P.S:脚本开发人员没有回复我的支持请求.

解决方法:

由于COOKIE_PREFIx是定义为具有某些值的常量,因此不应将其用引号引起来.而是尝试:

if (preg_match('#'.COOKIE_PREFIX.'#i', $key))

如果COOKIE_PREFIX中包含#,则此操作将失败,因此最好使用:

if (preg_match('#'.preg_quote(COOKIE_PREFIX,'#').'#i', $key))

大佬总结

以上是大佬教程为你收集整理的php-从eregi到preg_match全部内容,希望文章能够帮你解决php-从eregi到preg_match所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: