Php 将动态变量与isset()一起使用?

Php 将动态变量与isset()一起使用?,php,variables,isset,Php,Variables,Isset,我有一个循环,其中有一个动态变量,例如: while(i < 10){ echo ${"dynamic" . $i . "var"}; $i++; }; 但是,这不起作用,因为它仍在拾取$i 有人知道这样做的正确方法吗?试试这个: while($i < 10){ $label = "dynamic".$i."var"; if(isset($$label)) echo $$label; $i ++; }; while($i

我有一个循环,其中有一个动态变量,例如:

while(i < 10){
  echo  ${"dynamic" . $i . "var"};
  $i++;
};
但是,这不起作用,因为它仍在拾取
$i

有人知道这样做的正确方法吗?

试试这个:

while($i < 10){
  $label = "dynamic".$i."var";

  if(isset($$label))
    echo $$label;

  $i ++;
};
while($i<10){
$label=“dynamic”。$i.“var”;
如果(isset($$label))
echo$$标签;
$i++;
};

既然全局变量是坏主意,你应该重新思考你的代码。简单的重构是使用关联数组(即使在第一步它仍然是一个全局变量)。那你就可以和我一起工作了

if( isset($dynamic[$i]) ) ...

为什么地球人是邪恶的?阅读以下内容:

谢谢,但运气不好。那么,代码中的其他地方有一个bug,或者您没有使用最新的PHP版本。如果我在上面运行代码,效果会很好。也请给出您的解释。您在运行答案中提供的代码时得到了什么o/p?请发布您在代码中声明变量的帖子,比如
$dynamic3var
if( isset($dynamic[$i]) ) ...