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

Format date (with different input) php

我正在处理多语言公式并且必须解决日期格式问题:

在德语中,日期格式为: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

我知道 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);

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