Как конвертировать MySQL time в UNIX timestamp с помощью PHP?



есть много вопросов, которые задают о "unix timestamp to MySQL time". Мне нужен был обратный путь, да... Есть идеи?

727   6  

6 ответов:

использовать strtotime(..):

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

также проверьте это (чтобы сделать это в MySQL способ.)

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_unix-timestamp

вы можете в MySQL UNIX_TIMESTAMP

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

$unixTimestamp = time();

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

$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"]))
{...}
$time_PHP = strtotime( $datetime_SQL );

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

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

вместо strtotime вы должны использовать DateTime С PHP. Вы также можете рассматривать часовой пояс таким образом:

$dt = DateTime::createFromFormat('Y-m-d H:i:s', $mysqltime, new DateTimeZone('Europe/Berlin'));
$unix_timestamp = $dt->getTimestamp();

$mysqltime имеет тип MySQL Datetime, например 2018-02-26 07:53:00.

Comments

    Ничего не найдено.