PHP MySQL を作成したことがあるプログラマは、UNIX タイムスタンプと書式設定された日付には時差があることを知っています。UNIX タイムスタンプは保存や処理には便利ですが、書式設定された日付は直感的ではありません。 Unix のタイムスタンプほど処理が簡単ではないため、場合によっては相互に変換する必要があります。
1. MySQL で完了
このメソッドは、MySQL クエリ ステートメント内で変換されるため、PHP パーサーの解析時間がかからないという利点があります。欠点は、データベース クエリでのみ使用でき、制限があることです。
1. 関数を使用して UNIX タイムスタンプを日付に変換します: FROM_UNIXTIME()
一般形式: select FROM_UNIXTIME(1156219870); 2. 関数を使用して日付を変換します。 UNIX タイムスタンプへの変換 関数: UNIX_TIMESTAMP()
一般形式: UNIX_TIMESTAMP('2006-11-04 12:23:00');
例: mysql クエリのレコード数日:
$sql=”select * from message Where DATE_FORMAT(FROM_UNIXTIME(chattime),'%Y-%m-%d') = DATE_FORMAT(NOW(),'%Y-%m-% d') order by id desc”;
もちろん、PHP で変換することも選択できます。PHP での変換について話しましょう。
2. PHP で変換を完了する
この方法では、PHP プログラムでの変換が完了します。データベース内のクエリは変換されますが、その範囲は制限されていません。欠点は、PHP パーサーの解析時間がかかり、比較的遅いことです。
1. UNIX タイムスタンプを日付に変換する関数を使用します: date()
一般形式: date('Y-m-d H:i:s', 1156219870);日付を UNIX タイムスタンプに変換する関数を使用します: strtotime()
一般形式: strtotime('2010-03-24 08:15:42');