格式化日期(使用不同的输入)php

时间:2015-06-22 15:01:00

标签: php date format multilingual jquery-validation-engine

我正在制作多语言公式,必须解决日期格式问题:

在德语中,日期格式为:DD-MM-YYYY 而在另一个国家,例如英格兰的日期格式为:YYYY-MM-DD

虽然这个输入验证处理正确,但我需要为我的php脚本提供一个简单的解决方案来处理不同的日期格式。在我的MySQL-Database中,该字段被创建为" date"领域。

我已经考虑过这样的功能:

<? 
if($lang == "de") {
   $date = $_POST['date'];
   $toConvert = DateTime::createFromFormat('d-m-Y', $date);
   $convertedDate = $toConvert->format('Y-m-d');
}

但是,是否有一个更简单的解决方案,即检查所有国家/地区的时间格式与Y-m-d不同?也许是图书馆还是什么?我还没有发现任何事情......

祝你好运 DB-Dzine

1 个答案:

答案 0 :(得分:0)

我知道Zend在zend_date中有一些逻辑(需要Zend Framework ^^),但我会使用这样一个简单的解决方案:(从switch语句中获取格式)

 $date = $_POST['date'];
 $toConvert = DateTime::createFromFormat('d-m-Y', $date);

 switch($lang){
    case 'de': 
       $format = 'Y-m-d'; 
       break;
    default: 
       $format = 'd-m-Y'; 
       break 
 }

 $convertedDate = $toConvert->format($format);

通过自己动手,您知道您获得的格式是正确的(按您的标准,并且不会破坏您应用程序中的某些内容)