相关疑难解决方法(0)

preg_match():编译失败:偏移量为20的字符类中的无效范围

提前感谢您抽出时间帮助解决这个问题.

preg_match():编译失败:第278行偏移20 session.php的字符类中的无效范围

我不确定为什么这个停止工作几个月后工作可能是代码中的升级..

这是代码

    else{
     /* Spruce up username, check length */
     $subuser = stripslashes($subuser);
     if(strlen($subuser) < $config['min_user_chars']){
        $form->setError($field, "* Username below ".$config['min_user_chars']."characters");
     }
     else if(strlen($subuser) > $config['max_user_chars']){
        $form->setError($field, "* Username above ".$config['max_user_chars']."characters");
     }


     /* Check if username is not alphanumeric */
    /* PREG_MATCH CODE */

     else if(!preg_match("/^[a-z0-9]([0-9a-z_-\s])+$/i", $subuser)){        
        $form->setError($field, "* Username not alphanumeric");
     }


    /* PREG_MATCH CODE */


     /* Check if username is reserved */
     else if(strcasecmp($subuser, GUEST_NAME) == 0){
        $form->setError($field, "* Username reserved word");
     }
     /* Check …
Run Code Online (Sandbox Code Playgroud)

php regex preg-match

27
推荐指数
4
解决办法
4万
查看次数

PHP7.4:preg_replace():编译失败:偏移量 0 处无法识别编译时选项位

我们使用的是 ubuntu 20.04、PHP7.4 和 Azure SQL

消息:preg_replace():编译失败:偏移量 0 处无法识别编译时选项位

文件名:core/Common.php

线路号码:725

回溯:

文件:/var/www/html/api/index.php 行:316 函数:require_once

这是文件名中的代码:core/Common.php

function remove_invisible_characters($str, $url_encoded = TRUE)
    {
        $non_displayables = array();

        // every control character except newline (dec 10),
        // carriage return (dec 13) and horizontal tab (dec 09)
        if ($url_encoded)
        {
            $non_displayables[] = '/%0[0-8bcef]/i'; // url encoded 00-08, 11, 12, 14, 15
            $non_displayables[] = '/%1[0-9a-f]/i';  // url encoded 16-31
            $non_displayables[] = '/%7f/i'; // url encoded 127
        }

        $non_displayables[] = '/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]+/S';   // 00-08, 11, 12, 14-31, …
Run Code Online (Sandbox Code Playgroud)

php

3
推荐指数
1
解决办法
6652
查看次数

标签 统计

php ×2

preg-match ×1

regex ×1