php - 在php中获取2个日期之间的信息
问题描述
我有一个看起来像这样的数组
$data =
[
[
'date' => '2020-10-01',
'product' => 'Product 1',
'description' => 'Product 1',
],
[
'date' => '2020-11-01',
'product' => 'Product 2',
'description' => 'Product 2',
],
[
'date' => '2020-12-01',
'product' => 'Product 3',
'description' => 'Product 3',
],
[
'date' => '2021-01-01',
'product' => 'Product 4',
'description' => 'Product 4',
]
];
我想做的是获取两个日期之间的所有信息。例如,我想要 2021-01-01 和 2020-11-01 之间的所有内容,然后它将显示产品 2、产品 3 和产品 4
我不知道该怎么做
解决方案
<?php
$data =
[
[
'date' => '2020-10-01',
'product' => 'Product 1',
'description' => 'Product 1',
],
[
'date' => '2020-11-01',
'product' => 'Product 2',
'description' => 'Product 2',
],
[
'date' => '2020-12-01',
'product' => 'Product 3',
'description' => 'Product 3',
],
[
'date' => '2021-01-01',
'product' => 'Product 4',
'description' => 'Product 4',
]
];
$from = new DateTime('2020-11-11');
$to = new DateTime('2030-10-13');
foreach ($data as $d){
$productDate = new DateTime($d['date']);
if (($productDate >= $from) && ($productDate <= $to)){
echo "is between";
var_dump($d);
}
}
推荐阅读
- java - Alpha 动画有效,然后无效
- c# - 在c#中降低pdf流的DPI
- amazon-web-services - 如何通过 AWS SQS 触发 AWS Gluejob
- mysql - Prisma 在 mysql 中生成大写的数据库表。有没有办法只生成小写的表格?
- ms-word - 为什么 MS Word 2016 在以编程方式添加时不保留我的模板样式的编号格式
- html - 当目标是自定义框架名时是否需要 rel="noreferrer"?
- python - 如何从配置文件中引用文件夹的名称
- go - 编译器无法识别 Golang 中的时间类型
- azure - 使用 RBAC 访问 Azure Key Vault 中的托管机密?
- java - 在 Android SignalR 客户端上接收带有自定义对象的消息,数据未反序列化