1

我需要一种方法来做到这一点

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

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

4

5 回答 5

6

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

for($i = 1, $i <= 10, $i++) {
    $id[] = "example" . $i;
}
于 2012-07-11T21:28:31.160 回答
0
$var = array();
for($i=1; $i<=10; $i++) {
$var['id' . $i] = 'example' . $i;
}
extract($var, EXTR_SKIP);
unset($var);

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

于 2012-07-11T21:35:57.520 回答
0

使用数组会好得多,但你可以这样做:

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

这是我建议做的事情:

$ids = array;
for($i = 1; $i <= 10; $i++) {
    $ids[$i] = "example" . $i;
}
于 2012-07-11T21:30:31.480 回答
0

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

for($i=1;$i<=10;$i++){
    $id[$i] = "example" . $i;
}
于 2012-07-11T21:30:37.343 回答
0

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

$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;
}
于 2012-07-11T21:28:50.967 回答