배열 값이 같을 경우 채택완료
왕까마중
3년 전
조회 1,934
안녕하세요.
$prdArr 배열변수에 아래와 같은 배열이 존재 하는데
prd_group 의 값이 같을경우 같은 prd_group의 prd_cnt 수 를 합치고 배열을 하나로
만들수있는 방법이 있을까요???
ARRAY
(
[prd_type] => test
[prd_data] => ARRAY
(
[1] => ARRAY
(
<strong><span style="color:#c0392b;">[prd_group] => A</span></strong>
[prd_cnt] => 10
)
[2] => ARRAY
(
<span style="color:#e74c3c;"><strong>[prd_group] => A</strong></span>
[prd_cnt] => 5
)
[3] => ARRAY
(
[prd_group] => B
[prd_cnt] => 10
)
[4] => ARRAY
(
<span style="color:#16a085;"><strong>[prd_group] => C</strong></span>
[prd_cnt] => 10
)
[5] => ARRAY
(
<span style="color:#16a085;"><strong>[prd_group] => C</strong></span>
[prd_cnt] => 50
)
)
)
#원하는 결과물입니다.
[1] => ARRAY(
[prd_group] => A
[prd_cnt] => 15
)
[2] => ARRAY(
[prd_group] => B
[prd_cnt] => 10
)
[3] => ARRAY(
[prd_group] => C
[prd_cnt] => 60</span>
<span style="font-size:10pt;">)
</span>
감사합니다.
댓글을 작성하려면 로그인이 필요합니다.
답변 2개
채택된 답변
+20 포인트
3년 전
</p>
<p>$prd_data = [
["prd_group" => "A", "prd_cnt" => "10"],
["prd_group" => "A", "prd_cnt" => "5"],
["prd_group" => "B", "prd_cnt" => "10"],
["prd_group" => "C", "prd_cnt" => "10"],
["prd_group" => "C", "prd_cnt" => "50"]
];</p>
<p>$result = [];
foreach($prd_data as $v){
$key = $v["prd_group"];
if(isset($result[$key]))
$result[$key]["prd_cnt"] += $v["prd_cnt"];
else
$result[$key] = $v;
}
$result = array_values($result);
print_r($result);</p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 1개
�
왕까마중
3년 전
감사합니다~!
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인