PHP конвертировать формат даты dd/mm / yyyy => yyyy-mm-dd [дубликат]
Возможные Дубликаты:
PHP формат строки даты
Я пытаюсь преобразовать дату из dd/mm/yyyy => yyyy-mm-dd
. Я использую функцию mktime () и другие функции, но я не могу заставить ее работать. Мне удалось explode
исходная дата с помощью '/'
как разделитель, но у меня нет успеха в изменении формата и замене '/'
С '-'
.
любая помощь будет высоко оценили.
5 ответов:
даты
m/d/y
илиd-m-y
форматы разбираются путем просмотра на разделителе между различными компонентами: если разделитель a Слэш (/
), то американскийm/d/y
предполагается; в то время как если разделитель-это тире (-
) или точкой (.
), иd-m-y
формат предполагается. Проверьте здесь.используйте функцию даты по умолчанию.
$var = "20/04/2012"; echo date("Y-m-d", strtotime($var) );
EDIT Я просто протестировал его, и почему-то PHP не работает хорошо с форматом dd/mm/yyyy. Вот еще одно решение.
$var = '20/04/2012'; $date = str_replace('/', '-', $var); echo date('Y-m-d', strtotime($date));
Попробуйте Использовать
DateTime::createFromFormat
$date = DateTime::createFromFormat('d/m/Y', "24/04/2012"); echo $date->format('Y-m-d');
выход
2012-04-24
вот еще одно решение, не использующее date (). не так умно:)
$var = '20/04/2012'; echo implode("-", array_reverse(explode("/", $var)));