给定一个多维数组或字典$array
。
并假设$array['foo']['bar']['baz'] = 'something';
除了通过 eval 语句对我来说,还有其他方法可以使用多维索引foo/bar/baz
吗?(用例是动态创建索引,即函数不知道 /foo/bar/baz/ 是什么)。
我能想到的唯一方法是:
$item = testGetIndex($array, "'foo']['bar']['baz'");
function testGetIndex($array, $index) {
eval('$item = $array[' . $index . '];');
return $item;
}
注意:我应该提到我不想搜索这个数组。这是一个奇怪的用例。我被传递了一个非常大的多维数组,不得不使用像..
$array[foo][bar]..[baz]
对数组进行修改。