스토어 판매를 보여주는 앱이 있습니다. 이 배열은 다차원 배열이므로 루트 배열의 각 값은 관련된 하루 동안 [sales]
, [cost]
, [date]
등을 포함하는 배열입니다. OK, 각 상점에 대해 2 개의 배열이 있습니다. 하나는 확인 된 번호에 대한 것이고 다음은 확인되지 않은 번호에 대한 것입니다. 확인되지 않은 항목은 확인 후 바로 처리되므로 확인되지 않은 항목의 첫 번째 날짜는 확인 된 후 하루가됩니다.PHP에서 다차원 배열을 처리하는 가장 좋은 방법은 무엇입니까?
모두 괜찮습니다.
그러나 모든 매장의 총 판매량을 표시 할 때 합계를 얻으려면 확인 된 모든 숫자와 확인되지 않은 모든 숫자를 결합해야합니다. 여기 까다로운 부분이 있습니다. 확인 된 배열은 확인 된 가장 낮은 상점의 날짜까지만 올라야하며 나머지는 확인되지 않아야합니다. 예 : 주어진 날짜에 모든 상점이 번호를 확인했지만 해당 날짜에 대해 확인되지 않은 상점이 있으면 그 날짜에 대해 확인되지 않아야합니다. 따라서 확인 된 총계 및 확인되지 않은 합계를 작성해야 할 필요가있는 것처럼 각 배열을 점검하고 모두 검증 된 경우 검증 된 배열에 추가하십시오. 그렇지 않은 경우 미확인 된 어레이에 추가하십시오.
나는 이것이 상황을 설명하기 위해 최선을 다하고 있습니다. 나는 작동하는 알고리즘을 가지고 있지만, 너무 복잡해서 그 작업을 할 때마다 영원히 공부해야만합니다. 더 우아한 솔루션이 있기를 바랬습니다.
감사합니다 !!! 여기
이 더미 데이터이지만, 현실에서 더 많은 항목이있을 것입니다
$verified (
[0](sales => 355, cost=> 233, date=> 2008-03-01)
[0](sales => 235, cost=> 133, date=> 2008-03-02)
[0](sales => 435, cost=> 143, date=> 2008-03-02)
)
$unverified (
[0](sales => 232, cost=> 133, date=> 2008-03-03)
[0](sales => 335, cost=> 233, date=> 2008-03-04)
[0](sales => 535, cost=> 243, date=> 2008-03-05)
)
같은 배열 구조가 모습입니다. 각 상점에 대해이 2 개의 h 열이 있습니다. 두 배열 모두에 날짜가 표시되지 않습니다. 날짜는 확인되지 않은 상태이거나 확인 된 상태 일 것입니다.
그러나 각 저장소에 대해 이러한 배열 집합이 여러 개 있고이를 결합해야 할 경우 서로 다른 저장소의 확인되지 않은 숫자가 서로 다른 날짜에 시작됩니다. storeA는 15 일까지 확인할 수 있으며 storeB는 7 일까지 확인할 수 있습니다. 그래서 각 상점의 모든 것들로부터 새로운 $verified
과 새로운 $unverified
을 새로 만들어야합니다. 그러나 다른 날짜 범위에 걸쳐 있기 때문에 단순히 모든 검증을 결합 할 수는 없습니다. 따라서 모든 날짜가 확인되면 새 마스터 배열에서 확인 된 상태로 유지되지만 확인되지 않은 경우 새 마스터 확인되지 않은 배열로 이동해야합니다.
죄송합니다.
질문을 더 명확하게 해주는 일부 샘플 또는 의사 코드를 게시하십시오. 그렇게하면 시각화가 더 쉬워집니다. – jonstjohn
동의 함 ... 아마도 배열 구조체의 print_r()일까요? –
결과는 무엇입니까? 총 판매액 또는 합산 된 (계산서 날짜) $ 검증 된 상점과 확인되지 않은 $ 정렬 된 상점이 있습니까? – jfs