>백엔드 개발 >PHP 튜토리얼 >배열 질문에 대한 조언 요청

배열 질문에 대한 조언 요청

WBOY
WBOY원래의
2016-09-24 09:15:101186검색

배열 질문에 대한 조언 요청배열 질문에 대한 조언 요청

이제 위 배열 데이터가 있는데 다음 배열 데이터로 변경하고 싶습니다. 변경할 수 있나요?

배열 질문에 대한 조언 요청

가장 중요한 것은 두 어레이의 동일한 위치를 병합한 다음 새 어레이를 열어 서로 다른 위치를 저장하는 것입니다

답글 내용:

배열 질문에 대한 조언 요청배열 질문에 대한 조언 요청

이제 위 배열 데이터가 있는데 다음 배열 데이터로 변경하고 싶습니다. 변경할 수 있나요?

배열 질문에 대한 조언 요청

가장 중요한 것은 두 어레이의 동일한 위치를 병합한 다음 새 어레이를 열어 서로 다른 위치를 저장하는 것입니다

특정 필드를 반복적으로 꺼내서 사용하고 싶을 수도 있습니다.

<code>   $simiArray = [];
    foreach($resourceArray as $rVal) {
        $order_sn = $rVal['order_sn'];
        $simiArray[$rVal['order_sn']]['order_sn'] = $rVal['order_sn'];
        $simiArray[$order_sn]['order_add_time'] = $rVal['order_add_time'];
        $simiArray[$rVal['order_sn']]['pay_amonut'] = $rVal['pay_amonut'];
        unset($rVal['order_sn']);
        unset($rVal['order_add_time']);
        unset($rVal['pay_amonut']);
        $simiArray[$order_sn]['order_detail'][] = $rVal;
    }
</code>

구현 가능하지만 표준 라이브러리에는 이 함수와 함께 함수가 없어야 하므로 직접 작성해야 합니다.

지금은 코드를 작성하는 것이 편리하지 않으므로 먼저 아이디어를 드리겠습니다.

두 배열이 입력되면 첫 번째 배열을 순회합니다. 두 배열의 현재 키 값이 동일하면 해당 값을 새 배열에 푸시하고 두 입력 배열 값에서 키를 삭제합니다. 두 배열의 값이 달라도 걱정하지 마세요.

이런 방식으로 처리한 후 두 배열 사이에 동일한 키-값 쌍을 저장하는 배열과 다른 내용만 저장하는 두 배열(위에서 동일한 항목이 삭제되었기 때문에)을 얻을 수 있으며, 마지막으로 마지막 두 배열을 첫 번째 배열로 바꿉니다.

PS: 배열에서 요소를 삭제하면 성능 문제가 발생할 수 있습니다. 두 개의 개별 배열에 저장할 수 있습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.