PHP 一维数组转换为多维数组

PHP 把一维数组转换为多维数组
PHP 把一维数组的键值转化为多维数组的键名

  • 原始数组
$arr = ['aa','bb','cc','vv'];
  • 结果数组
$data['aa']['bb']['cc']['vv'] = 999;
  • ㊙️ 神秘算法 ㊙️
function tree ($arr,$result){
    $tree = [];
    $tmp = &$tree;
    foreach ($arr as $key) {
        $tmp[$key] = [];
        $tmp = &$tmp[$key];
    }
    $tmp = $result;
    return $tree;
}

$data = [];
$arr = ['aa','bb','cc','vv'];
$data = array_merge_recursive($data,tree($arr,'999'));
  • 返回结果
array(1) {
  ["aa"]=>
  array(1) {
    ["bb"]=>
    array(1) {
      ["cc"]=>
      array(1) {
        ["vv"]=>
        string(3) "999"
      }
    }
  }
}

你可能感兴趣的:(php,php)