原数据是下面的结构,需要去除第二层数组,转成二维数据。 还请请教各位大虾。
希望可以转成下面这种结果 。
2 回答
![?](http://img1.sycdn.imooc.com/545865890001495702200220-100-100.jpg)
慕桂英3389331
TA贡献2036条经验 获得超8个赞
$destArray = array();//原数据数组
$ordArray = array();// 需要数据的数组
foreach ($destArray as $destItem) {
$orderItem = array();
//获取源数据的name
$orderItem['name'] = $destItem['name'];
unset($destItem['name']);
//循环合并其他的键值
foreach ($destItem as $item) {
$orderItem = array_merge($orderItem,$item);
}
$ordArray[] = $orderItem;
}
print_r($ordArray);
![?](http://img1.sycdn.imooc.com/533e4c420001b2e502000200-100-100.jpg)
子衿沉夜
TA贡献1828条经验 获得超3个赞
不需要嵌套循环,
$tmp = []; //临时变量用来保存上一次merge后的结果,方便下次merge时使用
foreach ($arr as $ar) {
$result = array_merge($ar ,$tmp); //将三维数组的每一个元素逐个取出,与$tmp合并
$tmp = $result; //保存本次合并结果,方便下次合并时使用
}
var_dump($result);
- 2 回答
- 0 关注
- 465 浏览
添加回答
举报
0/150
提交
取消