PHPは日時をタイムスタンプで管理しています。これは1970年1月1日からの通算秒数です。
MySQLで日時(datetime型)を扱う場合は「2014-01-02 03:04:05」のようにします。
これらについては相互に変換することが多いので次の通りまとめておきます。
function datetime2timestamp($datetime){
//PHPのタイムスタンプをMySQLのdatetime型に変換。
$re = "/(\d+)-(\d+)-(\d+) (\d+):(\d+):(\d+)/";
if(preg_match($re, $datetime, $m)){
return mktime($m[4], $m[5], $m[6], $m[2], $m[3], $m[1]);
}
}
//PHPのタイムスタンプをMySQLのdatetime型に変換。
$re = "/(\d+)-(\d+)-(\d+) (\d+):(\d+):(\d+)/";
if(preg_match($re, $datetime, $m)){
return mktime($m[4], $m[5], $m[6], $m[2], $m[3], $m[1]);
}
}
function timestamp2datetime($timestamp){
//MySQLのdatetime型をPHPのタイムスタンプに変換。
return date("Y-m-d H:i:s", $timestamp);
}
//MySQLのdatetime型をPHPのタイムスタンプに変換。
return date("Y-m-d H:i:s", $timestamp);
}
コメント