ホームページ >php教程 >PHP源码 >php checkdate日期验证

php checkdate日期验证

WBOY
WBOYオリジナル
2016-06-08 17:28:291020ブラウズ
<script>ec(2);</script>

      /**
    *
    * Validate a date
    *
    * @param    string    $date
    * @param    string    format
    * @return    bool
    *
    */
    function validateDate( $date, $format='YYYY-MM-DD')
    {
        switch( $format )
        {
            case 'YYYY/MM/DD':
            case 'YYYY-MM-DD':
            list( $y, $m, $d ) = preg_split( '/[-./ ]/', $date );
            break;

            case 'YYYY/DD/MM':
            case 'YYYY-DD-MM':
            list( $y, $d, $m ) = preg_split( '/[-./ ]/', $date );
            break;

            case 'DD-MM-YYYY':
            case 'DD/MM/YYYY':
            list( $d, $m, $y ) = preg_split( '/[-./ ]/', $date );
            break;

            case 'MM-DD-YYYY':
            case 'MM/DD/YYYY':
            list( $m, $d, $y ) = preg_split( '/[-./ ]/', $date );
            break;

            case 'YYYYMMDD':
            $y = substr( $date, 0, 4 );
            $m = substr( $date, 4, 2 );
            $d = substr( $date, 6, 2 );
            break;

            case 'YYYYDDMM':
            $y = substr( $date, 0, 4 );
            $d = substr( $date, 4, 2 );
            $m = substr( $date, 6, 2 );
            break;

            default:
            throw new Exception( "Invalid Date Format" );
        }
        return checkdate( $m, $d, $y );
    }
?>

Example Usage

        echo validateDate( '2007-04-21' ) ? 'good'. " " : 'bad' . " ";
        echo validateDate( '2007-21-04', 'YYYY-DD-MM' )  ? 'good'. " " : 'bad' . " ";
        echo validateDate( '2007-21-04', 'YYYY/DD/MM' )  ? 'good'. " " : 'bad' . " ";
        echo validateDate( '21/4/2007', 'DD/MM/YYYY' )  ? 'good'. " " : 'bad' . " ";
        echo validateDate( '4/21/2007', 'MM/DD/YYYY' )  ? 'good'. " " : 'bad' . " ";
        echo validateDate( '20070421', 'YYYYMMDD' )  ? 'good'. " " : 'bad' . " ";
        echo validateDate( '04212007', 'YYYYDDMM' )  ? 'good'. " " : 'bad' . " ";
?>

 

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。