您的位置:首页技术文章
文章详情页

多维数组遍历,求大佬解答???

【字号: 日期:2022-06-08 13:32:40浏览:56作者:猪猪

问题描述

$result=array( array('name'=>'网络','电话'=>'12345678910','answer'=> array( 'question_id'=>'第1', 'answer'=>'程序测试1',), array('question_id'=>'第2','answer'=>'程序测试2', ) ), array('name'=>'网络1','电话'=>'12345678911','answer'=> array('question_id'=>'第3','answer'=>'程序测试3', ),array( 'question_id'=>'第4', 'answer'=>'程序测试4',) ));//将上边数组遍历成下边数组,求大佬。。$result2=array( array('name'=>'网络','电话'=>'12345678910','第1'=>'程序测试1','第2'=>'程序测试2', ), array('name'=>'网络1','电话'=>'12345678911','第3'=>'程序测试3','第4'=>'程序测试4', ));

问题解答

回答1:

以下程序不管$result键名怎么改都能得到你想要合并的数组:

$arr = [];

foreach ($result as $k => $v){

foreach ($result[$k] as $k1 =>$v2){

if (is_array($result[$k][$k1])){

foreach ($result[$k][$k1] as $k2 => $v2){

$arr[] = $v2;

}

$temp = [$arr[0] => $arr[1]];

unset ($result[$k][$k1]);

unset ($arr);

$result[$k] = array_merge($result[$k],$temp);

unset($temp);

}

}

}

回答2:你这个写得不清不楚的我没法帮你看