我目前正在致力于一个客户可以取消订单的网站,但他们只能在订单结束前一天的下午4点之前取消订单。
我知道如何获得前一天,但我不知道如何找出是否是下午4点。取得之前的日期和时间
$prevDay = date("Y-m-d h:m:s", strtotime('-1 day', strtotime($order->date."00:00:00")));
这给了我这样的输出:2011-05-08 12:05:00
我目前正在致力于一个客户可以取消订单的网站,但他们只能在订单结束前一天的下午4点之前取消订单。
我知道如何获得前一天,但我不知道如何找出是否是下午4点。取得之前的日期和时间
$prevDay = date("Y-m-d h:m:s", strtotime('-1 day', strtotime($order->date."00:00:00")));
这给了我这样的输出:2011-05-08 12:05:00
$prevDay = date("Y-m-d", strtotime('-1 day')) . " 16:00:00";
$orderTime = $order->date."00:00:00";
if($orderTime < $prevDay) {
// do stuff
}
编辑:等待,不知道该逻辑就在那里,但在原则上$ prevDay值应该给你昨天下午4点的日期。
什么更多的则是12后,中午13 forexample 14 15,直到24,然后用爆炸空格字符输出和
$time = db_value
$time = explode('',$time);
compare $time[1] > 16
希望以上的Sudu代码可以帮助你
$ordertime = strtotime($order->date);
$prevday = strtotime('-1 day' , $ordertime);
if (time() < $prevday && date('H') < 16) {
// it's okay to cancel
}
这似乎工作得很好,谢谢。 – woutr 2011-05-20 04:07:21
谢谢,这似乎是完美的。 – woutr 2011-05-20 03:42:53