0x01
三维数组中,选取其中的数据,重新组合 摘自SF上 记录下
Code:
-------
function combineDika($data) {
$result = array();
foreach (array_shift($data) as $k=>$item) {
$result[] = array($k=>$item);
}
foreach ($data as $k => $v) {
$result2 = [];
foreach ($result as $k1=>$item1) {
foreach ($v as $k2=>$item2) {
$temp = $item1;
$temp[$k2] = $item2;
$result2[] = $temp;
}
}
$result = $result2;
}
return $result;
}
$skuattr = Array
(
'7' => Array
(
'6' => '22x33',
'9' => '44x55',
),
'8' => Array
(
'12' => '大小号'
),
'9' => Array
(
'8' => '金属质',
'13' => '塑料',
),
'16' => Array
(
'14' => '圆形'
)
);
$a = combineDika($skuattr);
print_r($a);
0x02
三维数组 转化为二维数组
<?php
$array = array('0'=>array('1'=>'a','2'=>'b'),
'1'=>array('3'=>'c','4'=>'d'),
);
foreach ($array as $key=>$value){
foreach($value as $k=>$v){
$data[] =$v;
}
}
print_r($data);
?>
数组转换重组数据时,可采用foreach循环外,加$i的形式,
$array = array('0'=>array('0'=>'a','1'=>'b'),'1=>array('0'=>1));
$data = array();
$i=1;
foreach($array as $k=>$v){
$data1=$v['0'];
//操作
foreach($v as $key=>$value){
$data2[$i] = $value;
$i++;
}
}
print_r($data2);