【发布时间】:2011-07-08 14:21:04
【问题描述】:
我想通过使用单独的数组作为路径来访问特定数组的属性。问题是所讨论的属性可能处于任何深度。这是一个例子......
我有关联的数据数组:
$data = array(
'1' => 'somethings_value',
'2' => 'another_value',
'3' => array(
'1' => 'deeper_value',
),
);
现在我想访问其中一个值,但使用另一个数组来指示它们的路径(通过键)。所以说我有一个这样的路径数组:
$path = array('3', '1');
使用$path 数组,我想得到值$data[3][1](这将是字符串'deeper_value')。
问题是要访问的值可能在任何深度,例如我也可以得到这样的路径数组:
$path = array('1');
这将获得字符串值'somethings_value'。我希望问题现在已经清楚了。
所以问题是,我如何以某种方式循环这个路径数组,以便使用它的值作为键来定位位于目标数组中的值?
谢谢!
编辑:可能值得注意的是,为了便于阅读,我使用数字(尽管在引号中)作为数据数组的键,但我真正问题中的键实际上是字符串。
【问题讨论】: