2016-11-07 2 views
-2

У меня есть устройство, которое дает мне файлы журналов с форматом даты следующим образом: 16/11/07 (сегодня дата), но когда я пытаясь преобразовать его с date() и strtotime, не работает и дайте мне 1970-01-01.PHP - преобразовать формат даты с YY/MM/DD в yyyy-mm-dd

$row2 = "16/11/07;11:49:00"; 
$par = explode(";",$row2); 
$date = date("Y-m-d", strtotime($par[0])); 

У вас есть идеи?

Я не хочу создавать сценарий с «20» перед этой датой, потому что он не сформирован правильно.

Спасибо

+0

показать свой код. – Dave

+0

$ row2 = "16/11/07; 11: 49: 00"; $ par = explode (";", $ row2); $ date = date ("Y-m-d", strtotime ($ par [0])); – maures

+0

@maures включают в себя то, что вы сделали по вопросу –

ответ

1

Использование объекта DateTime.

try{ 
    $date = DateTime::createFromFormat('y/m/d',$my_date); 
    $req_date = $date->format('Y-m-d'); 
    echo "Req Date : ".$req_date; 
} catch (Exception $e) { 
    echo $e->getMessage(); 
} 
+0

измените ваш createFromFormat d/m/y на y/m/d. – Dave

+0

........ сделано мат. :-) –