DATETIME型の値をPHP上でUNIX TIMESTAMP値に変換する方法
追記:この記事に掲載されている関数を使うよりも、PHPに標準で備わっているstrtotime()関数を使ったほうがより簡単に実現できます。 参考記事はこちら。
あんまり需要がないかもしれませんが、ここに辿りついて来た方のために掲載しておきます。
引数が正当な日付かどうかのチェックは事前にお願いしますm(_ _ )m
/**
* DATETIME形式の値をUNIX TIMESTAMP値に変換
*
* @param string $datetime DATETIME値
* @return integer DATETIME型じゃなければ0
*/
function datetime2unixtime($datetime) {
$regex = "/(d{4})-(d{2})-(d{2}) (d{2}):(d{2}):(d{2})/";
if (preg_match($regex, $datetime, $m)) {
array_walk($m, 'intval');
return mktime($m[4],$m[5],$m[6],$m[2],$m[3],$m[1]);
} else {
return 0;
}
}
UNIX TIMESTAMP値をDATETIME値に変換
ついでなので、UNIX TIMESTAMP値をDATETIME値に変換する方法も載せておきますね。
/**
* UNIX TIMESTAMP形式の値をDATETIME値に変換
*
* @param integer $timestamp UNIX TIMESTAMP値
* @return string
*/
function unixtime2datetime($timestamp) {
if (is_int($timestamp)) {
return date('Y-m-d H:i:s', $timestamp);
} else {
return '';
}
}
Auto Amazon Links: プロダクトが見つかりません。
2009-04-24