【发布时间】:2016-01-17 05:25:03
【问题描述】:
我有一个包含多个索引的多数组,我需要能够将数组拆分为具有 2 个索引的多个数组,我的代码如下
查询返回一个数组,然后我循环认为它使其成为一个多数组,然后采用特定的索引并重建数组,但是当我尝试将最终结果拆分为具有数组块的较小数组时,它简单地返回相同的数组。
$query = DB::Table('StockHistory')
->select('price_1','day_1','price_2','day_2','price_3','day_3','price_4','day_4','price_5','day_5')
->where('id', '=', $id)->get();
$fields = [];
foreach($query as $ind => $val) {
foreach($val as $x => $y){
$fields[] = [$x, $y];
}
}
$data = [ $fields ];
$output = array_map(function($value) {
return [ $value[1][1],
$value[0][1],
$value[3][1],
$value[4][1],
$value[5][1],
$value[6][1]];
}, $data);
$a = array_chunk($output, 2, false);
$output 返回的数组
array:1 [▼
0 => array:1 [▼
0 => array:6 [▼
0 => "2016-01-06"
1 => 10
2 => "2016-01-12"
3 => 16
4 => "2016-01-18"
5 => 17
]
]
]
想要的数组
array:1 [▼
0 => array:1 [▼
0 => array:6 [▼
0 => "2016-01-06"
1 => 10
1 => array:2[▼
0 => "2016-01-12"
1 => 16
2 => array:2[▼
0 => "2016-01-18"
1 => 17
]
]
]
【问题讨论】:
标签: php arrays multidimensional-array foreach