Вы можете использовать функцию strtotime
для преобразования этой даты в отметку времени:
$str = 'Tue Dec 15 2009';
$timestamp = strtotime($str);
И, чтобы быть уверенным, давайте преобразовать его обратно в дату в виде строки:
var_dump(date('Y-m-d', $timestamp));
Что дает нам:
string '2009-12-15' (length=10)
(что доказывает strtotime
понял нашу дату ^^)
[править 2012-05-19], так как некоторые другие вопросы могут указать здесь некоторых читателей: Обратите внимание, что strtotime()
- не единственное решение, и вы должны быть в состоянии работать с классом DateTime
, который предоставляет некоторые интересные функции - особенно если вы используете PHP> = 5.3
В этом случае вы можете использовать что-то вроде следующей части кода:
$str = 'Tue Dec 15 2009';
$format = 'D F d Y';
$dt = DateTime::createFromFormat($format, $str);
$timestamp = $dt->format('U');
DateTime::createFromFormat()
позволяет создавать объект DateTime
практически из любой даты, независимо от того, как она отформатирована, так как вы можете указать формат, в котором она датируется (этот метод доступен с PHP> = 5.3) .
И DateTime::format()
позволит вам отформатировать этот объект практически в любой формат даты - включая UNIX Timestamp , как здесь требуется.