数组处理

$str = "a.c.b.d";//长度不固定
$arr = ["a"=>["b"=>["c"=>["d"=>'6666']]]];//多维数组不固定

//输出 666 不可用
//$str = explode('.', $str);
//$arr[$str[0]][$str[1]][$str[2]][$str[3]];
//这种方式

讨论数量: 2

不知道是不是这个需求:

$str = 'a.b.c.d';

$arr = explode('.', $str);
$val = str_repeat('6', count($arr));
$result = [];
while ($arr) {
    $tmp = [];
    $key = array_pop($arr);
    $result[$key] = $result ? $result : $val;
    $tmp[$key] = $result[$key];
    $result = $tmp;
}

var_dump($result);
2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!