Php 如何使用键数组遍历多维数组?

Php 如何使用键数组遍历多维数组?,php,Php,假设我有一个任意的密钥数组: $keys = array('foo', 'bar', 'baaz'); 我想使用该键数组遍历多维数组$values,这样$keys数组中的每个元素都是$values数组的一个级别。例如,给定上面的$keys数组,我正在寻找以下等价项: $values['foo']['bar']['baaz'] 或: 但是我不知道$keys数组中有什么,也不知道它有多大,所以我不能像这样硬编码它 有什么优雅的方法可以做到这一点吗?facepalm当然可以!如果我想用它来赋值,它

假设我有一个任意的密钥数组:

$keys = array('foo', 'bar', 'baaz');
我想使用该键数组遍历多维数组
$values
,这样
$keys
数组中的每个元素都是
$values
数组的一个级别。例如,给定上面的
$keys
数组,我正在寻找以下等价项:

$values['foo']['bar']['baaz']
或:

但是我不知道
$keys
数组中有什么,也不知道它有多大,所以我不能像这样硬编码它

有什么优雅的方法可以做到这一点吗?

facepalm当然可以!如果我想用它来赋值,它应该很简单,就像给
$value[$key]
添加一个引用操作符一样,对吗?
$value = $values;
foreach ($keys as $key) {
    $value = $value[$key];
}
echo $value;
$value = $values;
foreach ($keys as $key) {
    $value = $value[$key];
}
echo $value;