web-dev-qa-db-ja.com

PHPを使用してMySQLタイムをUNIXタイムスタンプに変換する方法は?

「MySQL時間へのUNIXタイムスタンプ」について尋ねる質問がたくさんあります。私は逆の方法が必要でした。

70
daGrevis

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

131
UltraInstinct

Mysqlの UNIX_TIMESTAMP クエリから直接機能します。以下に例を示します。

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

同様に、日付/日付時刻フィールドに渡すことができます:

SELECT UNIX_TIMESTAMP(yourField);
51
Sarfraz

私の他の投稿の1つから、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');

...ユーザーが現実的な時間を入力したかどうかを確認するために、1つまたは一定の時間範囲と比較します。

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

Unixタイムスタンプも安全です。前の範囲チェックをチェックする前に、次を実行して、URLで渡された変数が有効かどうかをチェックできます。

if(ctype_digit($_GET["UpdateTimestamp"]))
{...}
10
Florian Mertens
$time_PHP = strtotime( $datetime_SQL );
6
psycho brm

少し省略できます...

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

strtotimeの代わりに、PHPでDateTimeを使用する必要があります。タイムゾーンは次のように考えることもできます。

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

$mysqltimeはMySQL Datetimeタイプです。e。 g。 2018-02-26 07:53:00

1
Kai Noack