php中日期时间比较三个函数

WBOY
リリース: 2016-06-13 10:00:53
オリジナル
848 人が閲覧しました

文章介绍了三种常用的日期时间比较格式的函数,一个是对整日期,一个是只对时间比较,最后一个是专业比较时间差可以到秒。

日期比较如 2011-11-11  2011-12-12

 代码如下 复制代码
function compare_date( $DATE1, $DATE2 )
{
        $STR = strtok( $DATE1, "-" );
        $YEAR1 = $STR;
        $STR = strtok( "-" );
        $MON1 = $STR;
        $STR = strtok( "-" );
        $DAY1 = $STR;
        $STR = strtok( $DATE2, "-" );
        $YEAR2 = $STR;
        $STR = strtok( "-" );
        $MON2 = $STR;
        $STR = strtok( "-" );
        $DAY2 = $STR;
        if ( $YEAR2         {
                return 1;
        }
        if ( $YEAR1         {
                return -1;
        }
        if ( $MON2         {
                return 1;
        }
        if ( $MON1         {
                return -1;
        }
        if ( $DAY2         {
                return 1;
        }
        if ( $DAY1         {
                return -1;
        }
        return 0;
}

格式:12.00 -13.11

 代码如下 复制代码
function compare_time( $TIME1, $TIME2 )
{
        $STR = strtok( $TIME1, ":" );
        $HOUR1 = $STR;
        $STR = strtok( ":" );
        $MIN1 = $STR;
        $STR = strtok( ":" );
        $SEC1 = $STR;
        $STR = strtok( $TIME2, ":" );
        $HOUR2 = $STR;
        $STR = strtok( ":" );
        $MIN2 = $STR;
        $STR = strtok( ":" );
        $SEC2 = $STR;
        if ( $HOUR2         {
                return 1;
        }
        if ( $HOUR1         {
                return -1;
        }
        if ( $MIN2         {
                return 1;
        }
        if ( $MIN1         {
                return -1;
        }
        if ( $SEC2         {
                return 1;
        }
        if ( $SEC1         {
                return -1;
        }
        return 0;
}

格式:2011-11-12 1:6:25   ,2011-12-13 1:2:35

 代码如下 复制代码

function compare_date_time( $DATE_TIME1, $DATE_TIME2 )
{
        if ( $DATE_TIME1 == NULL || strlen( $DATE_TIME1 ) == 0 || $DATE_TIME2 == NULL || strlen( $DATE_TIME2 ) == 0 )
        {
                return -1;
        }
        $DATE_TIME1_ARRY = explode( " ", $DATE_TIME1 );
        $DATE_TIME2_ARRY = explode( " ", $DATE_TIME2 );
        if ( compare_date( $DATE_TIME1_ARRY[0], $DATE_TIME2_ARRY[0] ) == 1 )
        {
                return 1;
        }
        if ( compare_date( $DATE_TIME1_ARRY[0], $DATE_TIME2_ARRY[0] ) == 0 )
        {
                if ( compare_time( $DATE_TIME1_ARRY[1], $DATE_TIME2_ARRY[1] ) == 1 )
                {
                        return 1;
                }
                if ( compare_time( $DATE_TIME1_ARRY[1], $DATE_TIME2_ARRY[1] ) == 0 )
                {
                        return 0;
                }
                return -1;
        }
        return -1;
}

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート