mysqlデータベースのgmtにいくつかの日付が保存されています。
クライアントのタイムゾーンオフセットが-540だったとします。datetime
それを反映するためにデータベースからの送信をどのように修正しますか?日付を入力できる便利な関数はありますか、それともそれに応じて加算または減算する必要がありますか。
13212 次
2 に答える
4
おそらく、このスニペットはあなたを助けるでしょう:
$format = 'Y-m-d';
$obj = new DateTime();
$date = date($format, strtotime($obj->format('Y-m-d H:i:s')) - $obj->format('Z'));
詳細については、 http: //www.php.net/manual/en/class.datetime.phpも参照してください。
于 2012-03-06T08:50:49.173 に答える
4
データ項目は GMT 形式であるため、 を使用してタイム スタンプに変換する必要がありますstrtotime
。詳細については、http:
//php.net/manual/en/function.strtotime.php を参照してください。そこからオフセット (540 × 60 秒) を減算し、結果を を使用して新しい日付文字列に変換date
できます。詳細はこちら: http://php.net/manual/en/function.date.php
これが可能なコードの 1 つのバージョンを次に示します。
$dbValue = $row['date'];
$timestamp = strtotime($dbValue) - (540*60);
$result = date("Y-m-d H:i:s", $timestamp);
于 2012-03-06T08:55:51.923 に答える