배열을 이렇게 사용할수 있나요?
본문
array
(
[0] => array
(
[2019042916370944]=>150
[2019042916370944]=>300
[2019042916370944]=>100
[2019042822332869]=>700
[2019042812123234]=>100
)
)
2019042916370944 => 550
2019042822332869 => 700
2019042812123234 => 100
위에는, [ 주문번호 ]=>해당상품에 대한 지급할 포인트
형식으로 값을 넣고,
해당주문번호에 중복된 값들의 합을 구하고 싶습니다.
변수명은 이러합니다.
배열명: $arr
주문번호 : $row[od_id]
포인트: $point 입니다..
요렇게 하려면 어떻게해야될까요...?ㅠㅠ도움이 필요합니다..
답변 2
배열은 키가 동일하도록 그렇게 사용할 수 없습니다
array
(
[2019042916370944]=>150
[2019042916370944]=>300
[2019042916370944]=>100
[2019042822332869]=>700
[2019042812123234]=>100
)
위 배열은 아래와 같습니다
array
(
[2019042916370944]=>100
[2019042822332869]=>700
[2019042812123234]=>100
)
즉 [2019042916370944]=>100 <- 이것 하나만 남고 그 위의 두개는 키값이 동일한 마지막 값으로 덮여씌워져 없어져버립니다
[ 주문번호 ]=>해당상품에 대한 지급할 포인트 형식으로 값을 넣고
<---상품에 대한 포인트는 관리자 페이지 상품관리에서 각각의 상품에 지급할 포인트를 설정하면
자동으로 해당주문의 포인트가 합산되어 나오도록 되어있습니다
$arr =array();
foreach($array as $key=>$f){
foreach($f as $sub_key =>$sub_f){
$arr[$sub_key]+=$sub_f;
}
}
print_r($arr);
이정도면 해결될듯 하네요.