1

Twitter APIにリクエストを送信していますが、日付から時刻をphpで抽出し、mysqlに保存したいと思います。その方法を知っている人はいますか?

結果から得られる日時は次のとおりです...created_at":"2012年7月26日木曜日22:16:59+0000 "

ありがとうございました

4

1 に答える 1

2

タイムスタンプをデータベースに保存する

strtotime()PHP側とFROM_UNIXTIME()MySQL側で使用します。

つまり、基本的に、コードは次のようになります。

$twitter_timestamp = 'Thu, 26 Jul 2012 22:16:59 +0000';
$php_time = strtotime($twitter_timestamp);
$query = 'INSERT INTO `some_table` VALUES ("' . $php_time . '");';

上記は、タイムスタンプを適切なタイプ(TIMESTAMP)で列に格納していることを前提としています。の違いのTIMESTAMP詳細については、次のドキュメントページDATEDATETIME参照してください:MySQLドキュメント:DATE、DATETIME、およびTIMESTAMPタイプ

文字列として時間を保存する

タイムゾーンに対応しない方法(タイムゾーン情報以外のものTIMESTAMP)でタイムスタンプを保存する場合は、PHP側でタイムスタンプを表す文字列を作成する必要があります。

$twitter_timestamp = 'Thu, 26 Jul 2012 22:16:59 +0000';
$php_time = strtotime($twitter_timestamp);
// Optionally set local timezone:
date_default_timezone_set('America/Los_Angeles');
$php_timestamp = strftime('%T', $php_time); // will give "%H:%M:%S" timestamp
$query = 'INSERT INTO `some_table` VALUES ("' . $php_timestamp . '");';

呼び出しはオプションであることに注意してくださいdate_default_timezone_set()。現在とは異なる特定のタイムゾーンの時刻が必要な場合。上記は、「HH:MM:SS」の形式のタイムスタンプが必要であることを前提としています。

于 2012-07-26T23:02:55.497 に答える