Как преобразовать время MySQL в временную метку UNIX с помощью PHP?

Есть много вопросов, которые задают вопрос о временной отметке UNIX для времени MySQL. Мне нужен был обратный путь, да... Любая идея?

Ответ 2

Вы можете напрямую использовать mysql UNIX_TIMESTAMP непосредственно из вашего запроса, вот пример:

SELECT UNIX_TIMESTAMP('2007-11-30 10:30:19');

Аналогично, вы можете перейти в поле date/datetime:

SELECT UNIX_TIMESTAMP(yourField);

Ответ 3

Из одного из моих других сообщений, получая unixtimestamp:

$unixTimestamp = time();

Преобразование в формат datetime mysql:

$mysqlTimestamp = date("Y-m-d H:i:s", $unixTimestamp);

Получение некоторой метки времени mysql:

$mysqlTimestamp = '2013-01-10 12:13:37';

Преобразование его в unixtimestamp:

$unixTimestamp = strtotime('2010-05-17 19:13:37');

... сравнивая его с одним или несколькими раз, чтобы узнать, введен ли пользователь в реалистичное время:

if($unixTimestamp > strtotime("1999-12-15") && $unixTimestamp < strtotime("2025-12-15"))
{...}

Временные метки Unix также более безопасны. Вы можете сделать следующее, чтобы проверить правильность переданной переменной URL, прежде чем проверять (например) предыдущую проверку диапазона:

if(ctype_digit($_GET["UpdateTimestamp"]))
{...}

Ответ 4

$time_PHP = strtotime( $datetime_SQL );

Ответ 5

Немного сокращенно может быть...

echo date("Y-m-d H:i:s", strtotime($mysqltime));