php变量位于for循环中的一个变量之后


php variable after a variable in for loop

我需要一种方法来完成

for($i=1;$i<=10;$i++){
$id$i = "example" . $i;
}

注意第二行有$id$i因此对于第一个循环$id1将等于example1在第二个循环中$id2将等于example2等等非常感谢!

您可以使用变量变量名来执行此操作;然而,如果你只使用一个数组,它可能会更方便:

for($i = 1, $i <= 10, $i++) {
    $id[] = "example" . $i;
}

如果在字符串前面放另一个$,则可以将字符串转换为变量(变量的名称):

$str = "number";
$number = 5;
$$str = 8;
echo $number;  // will output 8

所以在你的例子中,你可以这样做:

for($i = 1; $i <= 10; $i++) {
    $str_var = "id".$i;
    $$str_var = "example".$i;
}

使用数组会更好,但可以这样做:

for($i=1; $i<=10; $i++){
    $var ="id$i";
    $$var = "example" . $i;
}

以下是我建议做的:

$ids = array;
for($i = 1; $i <= 10; $i++) {
    $ids[$i] = "example" . $i;
}

您可以创建一个大小为$i、名称为$id的数组,并将每个元素插入到不同的索引中。

for($i=1;$i<=10;$i++){
    $id[$i] = "example" . $i;
}
$var = array();
for($i=1; $i<=10; $i++) {
$var['id' . $i] = 'example' . $i;
}
extract($var, EXTR_SKIP);
unset($var);

但是为什么不使用一个简单的数组呢?