dtvnnhh8992 2018-09-04 01:10
浏览 26
已采纳

当使用Regex for for循环PHP时

I need use Regex in loop PHP And I have Problem like below. when i write this code it's work fine :

$phone_number= '2222463';

for ($i=1; $i <= 9; $i++) {
  if((preg_match("/^[$i]{3}/", $phone_number))){
    return true;
   }
}

but below code not return true :

for ($i=1; $i <= 9; $i++) {
  if((preg_match("/^[$i]{$i}/", $phone_number))){
    return true;
   }
}

Note : {2}=={$i}

  • 写回答

1条回答 默认 最新

  • dqj29136 2018-09-04 01:19
    关注
    $i = 3;
    echo "{3}", PHP_EOL, "{$i}";
    // {3}
    // 3
    

    {$...} is part of the complex PHP string interpolation syntax, and {$i} is interpreted as one variable interpolation. You need to escape/double the brackets here:

    "/^[$i]{{$i}}/"
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?