這是我的弱點...編寫if語句來獲取兩個特定日期之間的數據。我不知道它是什麼,但它總是讓我困惑。PHP在日期間抓取數據時遇到了問題
if($date > $enddate || $date < $startdate){
日期從數據庫中來來往往的開始日期是2013年5月6日和結束日期是2013年6月5日,我試圖抓住其間的這兩個日期的數據。
任何幫助將是非常感謝。
這是我的弱點...編寫if語句來獲取兩個特定日期之間的數據。我不知道它是什麼,但它總是讓我困惑。PHP在日期間抓取數據時遇到了問題
if($date > $enddate || $date < $startdate){
日期從數據庫中來來往往的開始日期是2013年5月6日和結束日期是2013年6月5日,我試圖抓住其間的這兩個日期的數據。
任何幫助將是非常感謝。
它不應該是:
if($date < $enddate && $date > $startdate){
如果日期出來的格式爲「2013年5月6日」的數據庫,你也可以做這樣的事情,所以你實際上可以恰當地比較:
//...get $date from the database...
$date = strtotime($date);
$startDate = strtotime("2013-05-06");
$endDate = strtotime("2013-06-05");
if($date < $enddate && $date > $startdate){
//some code
}
strtotime將您的日期字符串轉換爲數字的UNIX時間戳,使其更容易比較。
它應該是一個AND –
正確!我編輯了答案。 – user1578653
@ØHankyPankyØ - 你真的不應該用這種方式比較它們,但它實際上在Y-m-d格式時會起作用 - 字符串順序與日期排序相匹配。 –
假設變量是日期,什麼user1578653寫的是正確的
if($date < $enddate && $date > $startdate){ }
http://php.net/manual/en/datetime.diff.php
這一切都是假設,他們是日期,這將有助於如果您向我們展示了我們是什麼樣的變量與...合作。
請問if (strtotime($date) > strtotime($start_date) && strtotime($date) < strtotime($end_date))
有用嗎?
假設'$ startdate'在'$ enddate'之前,你的邏輯是相反的。你應該檢查日期__結束日期和_ _開始日期。 –
如果按照「寫」的方式對「邏輯」條件進行排序,它總是有幫助的。所以「start
dognose