배열 질문입니다.
본문
array(
[test1] => array
(
[0] => a1
[1] => a2
)
[test2] => array
(
[0] => b1
[1] => b2
)
)
이런식의 배열이 있다면
다음과 같은 배열로 변경 하는 방법이 있을까요?
기초가 부족하다보니 for를 돌리고 있네요 ㅎㅎㅎ
array (
[0] => array(
[test1]=>a1
[test2]=>b1
)
[1] => array(
[test1]=>a2
[test2]=>b2
)
)
목적
[{'test1':'a1', 'test2': 'b1'}, {'test1':'a2', 'test2': 'b2'}]
처럼 요구하는 json처리를 위함
답변 3
for 로 돌리셨으니 저는 foreach 로..;;
$s = array(
test1 => array(0 => 'a1',1 => 'a2'),
test2 => array(0 => 'b1',1 => 'b2')
);
print_r2($s);
$rr = array();
foreach($s as $k => $v){
$i=0;
foreach($v as $j => $v2){
$rr[$i][$k] = $v2;
$i++;
}
}
print_r2($rr);
!-->
이런식은 어떨까요?
$prices = array(
'Tires'=>100,
'Oil'=>10,
'Spark Plugs'=>4
);
while(list($product, $price) = each($prices)) {
echo "$product - $price";
}
$Data = array('test1'=>array('a1', 'a2', 'a3'), 'test2'=>array('b1', 'b2', 'b3'));
$DataKay = array_keys($Data);
$Out = array();
foreach($Data as $key=>$val) {
for($i=0; $i<count($Data[$key]); $i++) {
$Out[$i][$key] = $Data[$key][$i];
}
}
/*
결과:
Array
(
[0] => Array
(
[test1] => a1
[test2] => b1
)
[1] => Array
(
[test1] => a2
[test2] => b2
)
[2] => Array
(
[test1] => a3
[test2] => b3
)
)
*/
답변을 작성하시기 전에 로그인 해주세요.