下面是我想要完成的一个例子:
$array['aaa']['bbb']['ccc'] = "value";
$subarray = "['bbb']['ccc']";
echo $array['aaa']$subarray; // these 2 echos should be the same
echo $array['aaa']['bbb']['ccc']; // these 2 echos should be the same
应显示与$array['aaa']['bbb']['ccc']
相同,即"value"。
当然,这行不通。但有什么简单的解决办法吗?可能有一些功能和$subarray
值可以用作参数和/或作为数组本身,如:$subarray = array('bbb','ccc');
我不介意,只要它工作。
您可以尝试如下操作:
$subarray = "['bbb']['ccc']";
$temp = parse_str("'$array['aaa']".$subarray);
echo $temp;
OR忽略单引号-
$subarray = "[''bbb''][''ccc'']";
$temp = parse_str("'$array[''aaa'']".$subarray);
echo $temp;
也可以参考- http://php.net/manual/en/function.parse-str.php
试试使用数组块函数http://php.net/manual/en/function.array-chunk.php
这是实际工作!!
$array['aaa']['bbb']['ccc'] = "value";
$subarray = "['bbb']['ccc']";
$string = 'echo $array[''aaa'']' . $subarray . ';';
eval($string);