php循环语句问题

时间:2011-03-23 00:15:58

标签: php loops

我想知道是否可以在变量中循环变量?这是我想要设置的内容:

$var1 = Benjamin
$var2 = George
$var3 = Abraham

可能会回应像

这样的东西
<li>Benjamin</li>
<li>George</li>
<li>Abraham</li>

我想知道,如果我想添加$var4 = ..., $var5 = ...,有没有办法可以在循环中完成所有操作?我正在考虑使用empty()函数来循环变量名称/数字,直到达到第一个空变量?

6 个答案:

答案 0 :(得分:7)

您可以将它们存储在array

$names = array('Mike', 'Jim', 'Tom', 'Stacy');

foreach($names as $name){
  echo $name;
}

如下所示:http://www.ideone.com/f7Ce7

答案 1 :(得分:6)

在PHP中,你可以这样做:

    $var1 = "foo";
    $var2 = "bar";

    $name = "var1";
    $i=1;
    while( !is_null( $$name ) ) {
            echo '<li>' . $$name . '</li>';
            $i++;
            $name = "var$i";
    }

但更好的解决方案可能是使用数组和foreach

答案 2 :(得分:2)

这听起来像你想使用数组和foreach。我错过了什么吗?

$presidents = array(
  'Benjamin', 'George', 'Abraham'
);

foreach($presidents as $pres) {
 echo "$pres\n";
}

答案 3 :(得分:2)

$var=array('Benjamin', 'George', 'Abraham');

foreach ($var as $name){
echo $name;
}

答案 4 :(得分:0)

更好的解决方案是阵列。 将其定义为: $names = array(0=>"Benjamin",1=>"George",2=>"Abraham");

然后用:

循环
foreach ($names as $id=>$name)
{
    echo $name;
}

如果您想添加其他用途$names[0],请使用$names[] = 'William';引用名称 在以下网址查询更多信息:http://php.net/manual/en/language.types.array.php

答案 5 :(得分:0)

此解决方案不需要使用数组。

$var1 = 'Benjamin';
$var2 = 'George';
$var3 = 'Abraham';
//add as many variables as you want

$i = 0;
$currentVariable = 'var'.$i;
while (isset($$currentVariable)) {
    //process variable
    echo $$currentVariable;
    $i++;
}