DateTime形式から現在日時までの差(日)
/**
* 日の差分を返す
*
* @param datetime
* @return day
*/
function getDiffDay($time){
list($y, $m, $d, $hour, $min, $sec) = $this->getSepTimePart($time);
$regist1 = mktime($hour, $min, $sec ,$m, $d, $y);
// 現在
$regist2 = mktime(date(‘H’),date(‘i’), date(‘s’), date(‘m’),date(‘d’),date(‘Y’));
// 日の差分
$time_difference = $regist2-$regist1;
return floor($time_difference/(3600*24));
}
/**
* 日付をばらす
*
* @param datetime
* @return y, m, d, h, i, s
*/
function getSepTimePart($time){
// 日時を前半と後半に分割
$t = explode(” “, $time);
// 前半を分割
$d1 = explode(“-“, $t[0]);
// 後半を分割
$d2 = explode(“:”, $t[1]);
return array(
sprintf(“%04d”, $d1[0]),
sprintf(“%01d”, $d1[1]),
sprintf(“%01d”, $d1[2]),
sprintf(“%01d”, $d2[0]),
sprintf(“%01d”, $d2[1]),
sprintf(“%01d”, $d2[2])
);
}