PHP将日期转换为DD-M-YY

时间:2016-03-05 10:14:04

标签: php date

我正在尝试在我的代码中验证像17-JAN-1985这样的日期。

这是我正在使用的功能:

title

这将始终返回false:content

我做错了吗?

由于

2 个答案:

答案 0 :(得分:2)

用于阅读(解析)日期的格式字符串看起来应该是'd-M-Y',而不是' DD-M-YY'。当你比较时,你需要大写双方,因为PHP将生成" Jan"而不是" JAN"。此外,你忘记了返回值。

这是完全有效的代码:

function fncDate($date){
   $d = DateTime::createFromFormat('d-M-Y', $date);
   $result = $d && strtoupper($d->format('d-M-Y')) == strtoupper($date);
   if(!$result){
       return "Date should be in the following format: DD-MMM-YYYY";.
   }
   return $result;
}

答案 1 :(得分:0)

试试这个:

function fncDate($date)
{
    $date = date_create($date);

    $date1= date_format($date, 'Y-m-d ');

    $result = $date1 && $date1 == $date;

    if(!$result)
    {
       echo "Date should be in the following format: DD-MMM-YYYY"; 
    }
    else
    {
        echo "Ok";
    }
}