【发布时间】:2012-05-21 05:45:51
【问题描述】:
我有一个对象数组。每个对象都包含一个日期值。
根据特定日期范围过滤数组的最佳方法是什么,其中范围指定为 startDate 和 endDate?
更新:
感谢您的回复,我最后使用了这个代码:
foreach ($myArray as $key => &$value)
{
$d = DateTime::createFromFormat(self::DATE_FORMAT, $value["orderDate"]);
if ($d->getTimestamp() < $startDateTime->getTimestamp() || $d->getTimestamp() > $endDateTime->getTimestamp())
{
unset($myArray[$key]);
}
}
【问题讨论】:
-
如果碰巧这些对象来自数据库,您还可以更改 SQL 查询以返回已按日期排序的结果。你会使用
ORDER BY关键字..