我有这段代码:
$evt_start_date = date("m/d/Y", strtotime($event_date_from));
其中: $ event_date_from = enero 15,2017 这种格式的日期是西班牙语。
函数strtotime不起作用,因为$ event_date_from的格式不正确。
因为你可以在传递给函数strtotime之前正确格式化这个变量$ event_Date_from。
如何转换日期" ENERO 15,2017"进入正确的格式,以便" srttotime"函数不会返回错误。
答案 0 :(得分:1)
您可以使用PHP DateTime对象 - http://php.net/manual/en/datetime.createfromformat.php
您需要先使用英文名称替换月份名称,例如
$search = [
'spanishJanuary',
'spanishFebruary',
'spanishMarch',
// etc...
];
$replace = [
'January',
'February',
'March',
// etc...
];
$spanish_date_string = 'spanishMarch 15, 2017';
$date_string = str_replace($search, $replace, $spanish_date_string);
完成后,您可以像这样使用DateTime对象,
// $date_string now changed to "March 15, 2017"
$date = DateTime::createFromFormat('F j, Y', $date_string);
echo $date->format('m/d/Y');
这将导致
03/15/2017