簡體   English   中英

在php中比較日期的功能不起作用

[英]Function to compare dates in php doesn't work

我建立了應該比較日期並返回布爾值的函數。 但是,當我運行它時,它中斷了,頁面停止了。

功能:

 public function compare_date_outlook($creation, $modification) {
        $creation_date =  DateTime::createFromFormat('Y-m-d\TH:i:s+', $creation);
        $creation_date = $creation_date->format( 'Y-m-d');
        $modification_date =  DateTime::createFromFormat('Y-m-d\TH:i:s+', $modification);
        $modification_date = $modification_date->format( 'Y-m-d');   
        $date = new \DateTime( 'yesterday' );
        $date->setTime( 0, 0, 0 );
        $yesterday = $date->format( 'Y-m-d');

           if (($creation || $modification) == $yesterday)
           {
               return TRUE;
           }

           else {
               return FALSE;
           }
        }

我怎么稱呼它:

if ( compare_date_outlook($a['creationDate'], $a['lastModifiedDate']) === TRUE)

日期格式:

 $a['creationDate'] = "2017-09-08T13:26:11.4354775Z";

它在開始時就停止了:

$creation_date =  DateTime::createFromFormat('Y-m-d\TH:i:s+', $creation);

這樣的事情應該起作用:

function compare_date_outlook($creation, $modification)
{
    $today = (new \Datetime())->setTime(0, 0, 0);
    $yesterday = (new \Datetime('yesterday'))->setTime(0, 0, 0);

    $creation_date = \DateTime::createFromFormat('Y-m-d\TH:i:s+', $creation);
    $modification_date = \DateTime::createFromFormat('Y-m-d\TH:i:s+', $modification);

    return ($creation_date >= $yesterday && $creation_date < $today) ||
        ($modification_date >= $yesterday && $modification_date < $today);
}

可能您還有其他名稱空間。 因此,當您位於其他命名空間中時,需要在全局方法/類之前添加\\

在這里查看文檔http://www.php.net/manual/en/language.namespaces.global.php

public function compare_date_outlook($creation, $modification) {
        $creation_date =  \DateTime::createFromFormat('Y-m-d\TH:i:s+', $creation);
        $creation_date = $creation_date->format( 'Y-m-d');
        $modification_date =  \DateTime::createFromFormat('Y-m-d\TH:i:s+', $modification);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM