[英]php date less than another date
給定這種日期對象date("m/d/Y", strtotime($numerical." ".$day." of ".date("F")))
例如,它可以給出mm / dd / yyyy日,即“8月的第一個星期一”
如何確定此日期是否大於,小於或等於今天的日期?
我需要一個以這種格式工作的now()
方法,可以在日期對象之間進行比較
我還沒有嘗試過date()<date()。 但我認為這不會起作用
任何有識之士
我一開始誤解了你的問題。 您沒有像所說的那樣在比較中使用日期對象 ,而是日期的字符串表示(由date
創建)。
將日期的幾乎所有字符串表示與當前時間進行比較很容易:
$now = time();
$date = '2015/03/12'; #could be (almost) any string date
if (strtotime($date) > $now) {
#$date occurs in the future
} else {
#$date occurs now or in the past
}
將日期字符串與當前日期進行比較只是稍微復雜一些。 這是一種方法:
$today_start = strtotime('today');
$today_end = strtotime('tomorrow');
$date = '2015/03/12'; #could be (almost) any string date
$date_timestamp = strtotime($date);
if ($date_timestamp >= $today_end) {
#$date occurs after today
} elseif ($date_timestamp < $today_start) {
#$date occurs before today
} else {
#$date occurs today
}
而不是使用time
將當前時間縮短到第二個,您計算今天兩個午夜時間戳的時間戳。 然后你比較那些。
有更聰明的方法可以做到這一點(例如比較日期和今天的YYYY/MM/DD
表示),但這個例子很好地構建了第一個。
比較時間戳:
if (strtotime($numerical." ".$day." of ".date("F")) < time()) {
// older
} else {
// newer
}
這是可能的,因為strtotime()
返回自1.1.1970和time()
以來的秒數。 在PHP中,您可以輕松地比較整數...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.