我有一个计算交货时间的脚本...所以...订单日期的时间戳 - 当前时间戳显示时间......
这一切都很好。但有时客户可以在未来设定时间或日期。
所以对于那些订单,我不想显示柜台,但该怎么做这样的事情(所有时间戳都是00:00:00)
$time1 = date($orderItem->elapsed_time); //now
$time2 = date($orderItem->orderdate);
if ($orderItem->later_order_date LATER THEN $time1) {
$elapsed = "not started"
}
else {
$elapsed = $elapsedTime->getElapsedTimeOld($time1,$time2);
}
这样做的最佳方式是什么?
答案 0 :(得分:1)
DateTime()
个对象比较简单:
$time1 = new DateTime(); // No need to pass it anything to represent now
$time2 = new DateTimedate($orderItem->orderdate);
if ($time2 > $time1) {
$elapsed = "not started"
}
else {
$elapsed = $elapsedTime->getElapsedTimeOld($time1,$time2);
}
答案 1 :(得分:0)
您可以使用strtotime()
函数将格式化的日期从YYYY-mm-dd HH:ii:ss
转换为unix时间戳,这只是一个可以与常规比较运算符进行比较的数字:
if (strtotime($orderItem->later_order_date) > strtotime($time1)) {
$elapsed = 'not started';
}