我有一个像这样的数组
$data = array(
'class'=>'1',
'class_section'=>array('a','b','c'),
'class_fee'=>'500');
我希望这个数组成为
$data = array(
array('class'=>'1', 'class_section'=>'a', 'class_fee'=>500),
array('class'=>'1', 'class_section'=>'b', 'class_fee'=>500),
array('class'=>'1', 'class_section'=>'c', 'class_fee'=>500)
);
我希望这个数组成为
$data = array(
array('class'=>'1', 'section'=>'a', 'fee'=>500),
array('class'=>'1', 'section'=>'b', 'fee'=>500),
array('class'=>'1', 'section'=>'c', 'fee'=>500)
);
答案 0 :(得分:1)
您可以使用foreach
来做到:
$data = [
'class'=>'1',
'class_section'=> ['a','b','c'],
'class_fee'=>'500'
];
$newArray = [];
foreach($data['class_section'] as $section) {
$newArray[] = [
'class' => $data['class'],
'section' => $section,
'fee' => $data['class_fee']
];
}
答案 1 :(得分:0)
您可以通过许多不同的方法来完成它。一种使用foreach()
循环的方法,
<?php
$data = array(
'class'=>'1',
'class_section'=>array('a','b','c'),
'class_fee'=>'500'
);
$len = count($data);
for($i=0;$i<$len;$i++){
foreach($data as $k=>$v){
if(is_array($v)){
$result[$i][$k] = $v[$i];
}else{
$result[$i][$k] = $v;
}
}
}
print_r($result);
?>