如何用不同的变量替换多数组变量的一部分?

时间:2015-10-26 11:03:02

标签: php arrays

这是我想要完成的一个例子:

$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']相同,即“值”。

当然,这不起作用。但是有一些简单的解决方案吗? 可能有一些函数,$subarray值可以用作参数和/或数组本身,如:$subarray = array('bbb','ccc');我不介意,只要它更糟糕。

3 个答案:

答案 0 :(得分:0)

您可以尝试下面的内容。

$subarray = "['bbb']['ccc']";
$temp = parse_str("\$array['aaa']".$subarray);
echo $temp;

或忽略单引号 -

$subarray = "[\'bbb\'][\'ccc\']";
$temp = parse_str("\$array[\'aaa\']".$subarray);
echo $temp;

您也可以参考 - http://php.net/manual/en/function.parse-str.php

答案 1 :(得分:0)

答案 2 :(得分:0)

这是实际工作的!!

$array['aaa']['bbb']['ccc'] = "value";
$subarray = "['bbb']['ccc']"; 
$string = 'echo $array[\'aaa\']' . $subarray . ';';
eval($string);