PHP 中 IF 语句中的变量变量超时


Variable variable Timing Out In An IF Statement In PHP

我正在尝试将一些动态变量设置为 NULL 以避免"警告:未定义的变量"警告。我正在使用这段代码:

        $i = 1;
        while($i <= 15){
            if(!isset(${"ss".$i})){
            ${"ss".$i} = null;
            $i = $i + 1;
            }
        }

但是,它只是在 60 秒时超时致命错误:第 94 行的/www/sites/164/edit.php 中超过了 60 秒的最大执行时间

知道为什么会这样吗?

你只增加 IF 语句中的$i。如果IF为假,它将被困在一个无限循环中。

我建议您使用错误控制运算符来抑制警告,而不必每次都运行该循环。

你陷入了无限循环。将代码更改为:

$i = 1;
while($i <= 15) {
   if(!isset(${"ss".$i})){
      ${"ss".$i} = null;
   }
   $i = $i + 1;
}