CakePHP / PHP,克罗地亚日期转换为 mysql 日期

CakePHP / PHP, Croatian date convert to mysql date

我们需要从 html 表单发送 "Croatian" 格式的日期 29。 01. 2015(注意点后面的space),但是在我们将日期保存到数据库之前需要将字符串转换成mysql日期格式2015-01-29.

我们使用的是 CakePHP 2.6 框架,因此您可以将 CakeTime 助手和普通 PHP.

结合起来

目前我们使用这个功能:

// $pickerDate = '29. 01. 2015';
public function pickerDateToMysql($pickerDate){
    $datetime = explode(' ', str_replace('.','',$pickerDate));
    $date = implode('-',array_reverse($datetime));
    debug($date);
    return $date;  // 2015-01-29
}

有没有更优雅的方案?

您可以使用 DateTime::createFromFormat() 方法重新排列日期格式

public function pickerDateToMysql($pickerDate){
    $date = DateTime::createFromFormat('d. m. Y', $pickerDate);
    return $date->format('Y-m-d');
}  
$CroatianDate = '29. 01. 2015';
pickerDateToMysql($CroatianDate);