php的替代函数已弃用sql_regcase()

时间:2014-10-28 21:48:54

标签: php posix deprecated pcre alternate

我的代码如下:

foreach($filetypes as $filetype)
{
  $filenum = $filenum + count(glob($root.$tree.$branch.sql_regcase($filetype),GLOB_NOSORT));
}

不推荐使用函数sql_regcase()。有谁知道sql_regcase()的替代方案? 我在下面尝试了这个,但我认为它不一样。

$filenum = $filenum+count(glob($root.$tree.$branch.preg_mach("/$filetype/ig"),GLOB_NOSORT));

同样根据这个http://php.net/manual/en/reference.pcre.pattern.posix.php,没有等效功能。

2 个答案:

答案 0 :(得分:1)

最后,我做到了:

function my_Sql_regcase($str){

    $res = "";

    $chars = str_split($str);
    foreach($chars as $char){
        if(preg_match("/[A-Za-z]/", $char))
            $res .= "[".mb_strtoupper($char, 'UTF-8').mb_strtolower($char, 'UTF-8')."]";
        else
            $res .= $char;
    }

    return $res;
}

答案 1 :(得分:0)

在正则表达式中使用不区分大小写的标记(i)而不是/[a-z]/i