Ответ 1
Реальный ответ на этот вопрос, я имею в виду http://www.php.net/manual/en/datetime.createfromformat.php
<?php
$date = date_create_from_format('j-M-Y', '15-Feb-2009');
echo date_format($date, 'Y-m-d'); // 2009-02-15
?>
Есть ли функция, использующая формат date()
для интерпретации строки?
echo date('s-i-H d:m:Y', 1304591364); // 34-29-17 05:05:2011
// Does this function exist?
echo inverse_date('s-i-H d:m:Y', '34-29-17 05:05:2011'); // 1304591364
Я знаю strtotime()
, но его в большинстве случаев не удается, так как я не разбираю английские форматы даты.
Я ищу функцию, которая может диктовать формат.
Реальный ответ на этот вопрос, я имею в виду http://www.php.net/manual/en/datetime.createfromformat.php
<?php
$date = date_create_from_format('j-M-Y', '15-Feb-2009');
echo date_format($date, 'Y-m-d'); // 2009-02-15
?>
Обычно вы использовали strtotime
:
echo strtotime('2011-05-05 17:29:34');
Из руководства:
strtotime - Разбор любого английского текстовое описание даты и времени в Временная метка Unix
См. допустимые форматы даты и времени, чтобы убедиться, что строка, которую вы передаете, будет правильно проанализирована.
PHP 5.4+ напечатает 1359674625
echo date_create_from_format('j/n/Y G:i:s','1/2/2013 1:23:45')->getTimestamp();
Функция mktime
, кажется, делает то, что вы хотите.
Проверьте справку на php.net:
http://php.net/manual/en/function.mktime.php
EDIT: действительно, strtotime
может быть более удобным для вас, я не знал этой функции, рад узнать.
Принятый ответ правильный IMO, но вы также можете использовать синтаксис OO: DateTime::createFromFormat
например:
$dateTimeObject = \DateTime::createFromFormat('G:i', '9:30');
$dateTimeObject->format('H:i');
См. http://php.net/manual/en/function.date.php для руководств по форматированию и http://php.net/manual/en/datetime.createfromformat.php для информации о методе, описанном выше.
Да вы можете использовать:
echo strtotime("2011-05-05 17:29:34");
Попробуйте сделать это:
$x = '2013-09-15';
$x = implode ('-', array_reverse (explode ('-', $x)));
//теперь $x = '15 -09-2013 '