我想知道是否可以在变量中循环变量?这是我想要设置的内容:
$var1 = Benjamin
$var2 = George
$var3 = Abraham
可能会回应像
这样的东西<li>Benjamin</li>
<li>George</li>
<li>Abraham</li>
但我想知道,如果我想添加$var4 = ..., $var5 = ...
,有没有办法可以在循环中完成所有操作?我正在考虑使用empty()
函数来循环变量名称/数字,直到达到第一个空变量?
答案 0 :(得分:7)
您可以将它们存储在array。
中$names = array('Mike', 'Jim', 'Tom', 'Stacy');
foreach($names as $name){
echo $name;
}
答案 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++;
}