2013-06-02 71 views
2

我有这样的代码:腓如何把一个变量,在变量

echo $b1[1][wood]; // It would say 100 

,但我想改变1 $ B1,例如:

$id = 1; 
echo $b(The $id here)[1][wood]; 

我试过

echo $b'.$id.'[1][wood]; 

但它没有工作。有没有人有什么建议 ?

感谢

+2

* Ick *。尽量避免[“变量变量”](http://php.net/manual/en/language.variables.variable.php) - 没有多少语言具有这样的结构,但无论如何都工作得很好。不要将“方便”(根据文档的措辞)与“适当”混淆。 – user2246674

+0

米兰的答案是完美的。不过,我建议你想尝试使用数组。 – Aldee

回答

5

试试这个:

$id = 1; 
echo ${'b'.$id}[1]['wood']; 
2

试试这个:

$varName = 'b' . $id; 
echo ${$varName}[1]['wood']; 

(请注意,我也把引号 '木' - PHP把wood作为一个未定义的常量,这将工作,但会产生警告)

更好的解决方案是将无效的变量变量。难道你不能让$ id是数组的另一个维度吗? $b[$id][1]['wood']

2

为什么不使用数组()类型?