php可变变量名表示数组的问题

代码如下:
$array['x']['y'] = 'string';
$a = 'array["x"]["y"]';
echo $$a; // 得不到想要的结果 string

请问有什么好的办法解决吗?

你这个是把array["x"]["y"]当成字符串了,不是当成数组所以不能输出值追问

我知道是因为 php 把它当成字符串了,仅想知道解决办法。谢谢。

追答

$myarray['x']['y'] = 'string';
$a = "myarray";
$b=$$a;
echo $b['x']['y'];
只有这样,没有其它办法了,数组不能那样用的哦

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-10
$string = '3333';
$array['x']['y'] = 'string';
$a = $array['x']['y'];
echo $$a;追问

其实你的代码就是这样的,
$string = '3333';
$a = 'string';
echo $$a;

返回结果是 3333。完全跟数组没有关系。

追答

$a = 'array["x"]["y"]';
这个是被当成字符串处理的,不被认为是数组,所以肯定不会出来你要的结果的

第2个回答  2013-04-10
'array["x"]["y"]';这里应该有错!写法不对!
相似回答