使用计数器作为变量名称的一部分访问变量

时间:2010-12-01 17:38:55

标签: php variables

我试着这样做:

$cat1 = array('hello', 'everyone');
$cat = array('bye', 'everyone');

for($index = 0; $index < 2; $index++) {
echo $cat$index[1];
}

当然不起作用。 我需要在这里更改什么?

5 个答案:

答案 0 :(得分:1)

这是你的意图吗?

$cat0 = array('hello', 'everyone');
$cat1 = array('bye', 'everyone');

for($index = 0; $index < 2; $index++) {
    $varname = 'cat'.$index;
    echo $varname[0].' '.$varname[1];
}

答案 1 :(得分:1)

您应该使用嵌套数组,但这可以完成。

$cat1 = array('hello', 'everyone');
$cat2 = array('bye', 'everyone');

for($i = 1; $i <= 2; $i++) {
    echo ${'cat' . $i}[1];
}

参考:http://php.net/language.variables.variable

但这会好得多:

$cats = array(
    array('hello', 'everyone'),
    array('bye', 'everyone')
);
foreach ($cats as $cat) {
    echo $cat[1];
}

答案 2 :(得分:1)

如果坚持这样做......

echo ${'cat' . $index}[1];

答案 3 :(得分:0)

要回显数组内的元素,您需要使用

echo $cat[$index]

以你的榜样。

我不确定$index[1]应该做什么?也许我误解了你的问题。

答案 4 :(得分:0)

你不能像这样引用$ index,它不是数组。

echo $cat[$index];

是你想要做的。