【发布时间】:2019-04-30 09:48:57
【问题描述】:
我发布这个问题是因为我在这里搜索时没有得到解决方案。 这是我的问题
从视图页面提交数据后,我有一个数组,它是用户选择预订某些日期(开始日期和结束日期)的产品列表。 比如他可能在同一日期选择了 3 种不同的产品,或者在不同日期的开始日期和返回日期选择了所有 3 种产品。
现在我有一个数组,其中包含用户选择的所有产品以及 start_date 和 end_date 以及其他产品相关信息。
在将这些产品存储为 ORDERS 之前,我需要检查
如果多个产品有相同 start_date 和 end_date,则成为一个订单。
如果多个产品有不同 start_date 和 end_date,则变成不同订单。
现在我将如何检查这些产品的 start_date 和 end_date 是否相同或不同?
例如..这是一个数组
Array
(
[0] => Array
(
[product_id] => 15
[start_date] => 2019-05-15
[end_date] => 2019-05-16
[status] => in_stock
)
[1] => Array
(
[product_id] => 16
[start_date] => 2019-05-15
[end_date] => 2019-05-16
[status] => out_of_stock
)
[2] => Array
(
[product_id] => 17
[start_date] => 2019-05-17
[end_date] => 2019-05-18
[status] => in_stock
)
)
这是 3 种不同的产品,这里有 2 种产品在同一日期预订 product_id[15,16]-> 所以它变成 一个订单。
而另一个 product_id 编号为 17 的产品变成了第二个订单。
编辑...
我现在已将状态添加到数组中,假设我在同一日期 product_id[15,16] 有 2 个订单,现在它必须根据两个条件进行排序,
如果多个订单具有相同的 start_date 和 end_date,则它变成单个订单/数组,这是我通过使用接受的答案实现的。
现在假设在排序后我得到一个数组,其中我有 2 个不同的产品,一个是 in_stock,另一个是 out_of_stock,现在它应该再次变为两种不同的顺序。
请给出一些解决方案,因为我被困在这里。
【问题讨论】:
标签: php arrays arraylist foreach yii2-advanced-app