从 php 中的简单数组构建动态关联数组
Build dynamic associative array from simple array in php
我有一个数组,如下所示
$arr = ['Product', 'Category', 'Rule'];
这可以是一个动态数组,这意味着它有时可以包含 1-5 个元素,并且它的值可以改变。
我们如何以 动态方式 .
从上面的数组创建下面给出的数组
$json['Product']['Category']['Rule'] = 'fixed';
简单地说,我只是想根据我从 $arr 获得的值创建一个多维数组。
这个函数应该可以做到。
function nestArray($arr, $value) {
if (!count($arr)) {
return $value;
}
foreach (array_reverse($arr) as $key) {
$new = [$key => $value];
$value = $new;
}
return $new;
}
例子
$arr = ['Product', 'Category', 'Rule'];
$nested = nestArray($arr, 'fixed');
print_r($nested);
输出
Array
(
[Product] => Array
(
[Category] => Array
(
[Rule] => fixed
)
)
)
我有一个数组,如下所示
$arr = ['Product', 'Category', 'Rule'];
这可以是一个动态数组,这意味着它有时可以包含 1-5 个元素,并且它的值可以改变。 我们如何以 动态方式 .
从上面的数组创建下面给出的数组$json['Product']['Category']['Rule'] = 'fixed';
简单地说,我只是想根据我从 $arr 获得的值创建一个多维数组。
这个函数应该可以做到。
function nestArray($arr, $value) {
if (!count($arr)) {
return $value;
}
foreach (array_reverse($arr) as $key) {
$new = [$key => $value];
$value = $new;
}
return $new;
}
例子
$arr = ['Product', 'Category', 'Rule'];
$nested = nestArray($arr, 'fixed');
print_r($nested);
输出
Array
(
[Product] => Array
(
[Category] => Array
(
[Rule] => fixed
)
)
)