将不同的语言日期转换为PHP中的通用格式

时间:2018-07-12 06:57:30

标签: php date

我有一系列日期,例如

    var table = new DataTable();
    while (true)
    {
        var newRow = table.NewRow();
        table.Rows.Add(newRow);   //Without this 2 rows you will have memory leak.
        table.Rows.Remove(newRow);//
    }

无法说出数组中所有的语言日期是什么。

我必须将数组转换为通用格式(例如d-m-Y):

$arrDate = array('12-ápr.-2018', '8-anp.-2018', '11-Apr-2018', '03-mai-2018');

我尝试过的事情:

尝试1 :使用$arrDate = array('12-04-2018', '8-04-2018', '11-04-2018', '03-05-2018'); 将日期转换为Unix时间戳,但其他语言日期的结果为空字符串。

尝试2 :使用strtotime()类函数转换为时间戳。但是显示错误

  

异常:DateTime :: __ construct():无法解析时间字符串   (16-ápr.-2018)在位置0(1):意外字符

请帮我解决这个问题。预先感谢。

1 个答案:

答案 0 :(得分:-1)

您可以像下面一样使用str_replace

  $arrDates = array('12-ápr.-2018', '8-anp.2018', '11-Apr-2018');
  foreach($arrDates as &$d){
    $d = str_replace(['ápr.-','anp.','Apr-'],'4-',$d);
  }
  print_r($arrDates);

Live Demo

输出:

Array
(
    [0] => 12-4-2018
    [1] => 8-4-2018
    [2] => 11-4-2018
)