Twitter APIにリクエストを送信していますが、日付から時刻をphpで抽出し、mysqlに保存したいと思います。その方法を知っている人はいますか?
結果から得られる日時は次のとおりです...created_at":"2012年7月26日木曜日22:16:59+0000 "
ありがとうございました
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
詳細については、次のドキュメントページDATE
をDATETIME
参照してください: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
」の形式のタイムスタンプが必要であることを前提としています。