我有一个显示商店销售的应用程序。它是一个多维数组,因此根数组中的每个值都是一个数组,其中包含它所属的给定日期的 、 、[sales]
等[cost]
。[date]
好的,每个商店都有 2 个数组。一个用于已验证的号码,下一个用于未验证的号码。未验证的会在验证后立即领取,因此未验证的第一个日期将是验证后的一天。
好的,到目前为止这一切都很好。
但是当我显示所有商店的总销售额时,我需要将所有已验证和所有未验证的数字结合起来得到总数。这是棘手的部分。经过验证的数组应该只到最低验证商店的日期,其余的都应该是未经验证的。例如:在给定日期,如果所有商店都有已验证的号码,但有一个在该日期未验证,那么它们都需要在该日期未验证。所以这就像它需要创建一个已验证的总数和一个未验证的总数,检查每个数组,如果它们都已验证,则添加到已验证的数组,否则如果有任何未验证的添加到未验证的数组。
我希望这是因为,我正在尽力解释这种情况。我确实有一个有效的算法,但它太复杂了,我每次研究它时都必须永远研究它,我希望有一个更优雅的解决方案。
谢谢!!!
这是数组结构的样子
$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 个数组。两个数组的日期都不会显示;日期只会在未验证或已验证。
但是当您为每个商店有几组这些数组并且需要将它们组合起来时,不同商店的未经验证的数字将在不同的日期开始。storeA 可以在 15 日之前进行验证,而 storeB 可以在 7 日之前进行验证。所以我需要为每家商店建立一个新的$verified
和一个新的。$unverified
但我不能简单地结合所有验证,因为它们跨越不同的日期范围。因此,如果所有日期都已验证,那么它们会在新的主阵列中保持验证,但如果有任何日期未验证,则它们需要转到新的未验证主阵列。
如果这不成功,我很抱歉。