0
01/20/2011 = January 20, 2011

01/2011 = January 2011

これらの 2 つの形式のみを許可する必要があります。

i.e. 01/01/01/2011 = ERROR!

PHP:

$date = '01/20/2011';

//$date = '01/2011';

if(........format test........)//01/20/2011
{
    if(...validation...)
    {
        echo date('F j, Y', strtotime($date));
    }
}
else//01/2011
{
    if(...validation...)
    {
        echo date('F Y', .....);
    }
}

検証:

IF = 2011 年 1 月 20 日

  • 最初の部分には 01 ~ 12 の数字のみを含める必要があります
  • 2 番目の部分には 01 ~ 31 の数字のみを含める必要があります
  • 3 番目の部分は 4 つの数字で構成する必要があります

IF = 2011 年 1 月

  • 最初の部分には 01 ~ 12 の数字のみを含める必要があります
  • 2 番目の部分は 4 つの数字で構成する必要があります
4

1 に答える 1

0

これはうまくいきますか:

function custom_checkdate($date){
    $date_parts = explode('/', $date);

    if(count($date_parts) === 3){
        $d = $date_parts[1];
        $m = $date_parts[0];
        $y = $date_parts[2];
    }elseif(count($date_parts) === 2){
        $d = 1;
        $m = $date_parts[0];
        $y = $date_parts[1];
    }else{
        return false;
    }

    if( checkdate($m, $d, $y) ){
        return true;
    }else{
        return false;
    }
}
于 2011-01-20T13:52:03.697 に答える