2015-02-27 11 views

ответ

3

Это должно работать для вас:

<?php 

    $date = '27/02/2015'; 
    $d = DateTime::createFromFormat("d/m/Y", $date); 
    echo $d->format("Y-m-d"); 

?> 

Выход:

2015-02-27 
+0

Работает нормально. Но в чем проблема с/и - символами – vijaykumar

+0

@ vijay4vijju Проблема заключается в 'strtotime()' считает, что ваш формат - США, вы можете видеть это в [doc] (http://php.net/manual/en/ function.strtotime.php) внизу в примечаниях, которые вы можете прочитать об этом (например, он смотрит на разделитель так: '/' -> america -> 'm/d/y', поэтому вы получаете неправильный вывод) – Rizier123

+0

я получил свою проблему – vijaykumar

1

С / не стандартный формат даты и времени Попробуйте заменить его -

$date = '27/02/2015'; 
echo $newDate = date('Y-m-d',strtotime(str_replace('/', '-', $date)));//2015-02-27 
+0

Но это будет, когда «02/27/2015», даже без замены – vijaykumar

3

Просто взорвать эту строку:

list($d,$m,$y) = explode('/',$date); 

И переконфигурировать как:

$newDate = "$y-$m-$d"; 
Смежные вопросы