phpで、2つの日付が何ヶ月離れているかを求めるときのメモ。
だけど、このブログ用に作ったので、結構アイマイです。。。
うるう年は考慮されてないし、月で比較してるので日にちまで見てないっす。。。
使用するときは、そこらへん要注意!
あとあと、生後○ヶ月と出したいので、実際の月の差よりマイナス1ヶ月してます。
$bornDate = '2012-05-30'; // canna産まれた日 $todayDate = get_the_time('Y-m-d'); // 記事の公開日(wordpress) // 秒数に変換 $bornTime = strtotime($bornDate); $todayTime = strtotime($todayDate); $diffDate = abs(($todayTime - $bornTime) / (60 * 60 * 24)); // 月数に変換 $bornMonth = date("Y",$bornTime)*12 + date("m",$bornTime); $todayMonth = date("Y",$todayTime)*12 + date("m",$todayTime); // 産まれた翌月は生後0ヶ月だからマイナス1 $diffTemp = $todayMonth - $bornMonth -1; $diffTemp = ($diffTemp < 0)? 0:$diffTemp; $diffYear = floor($diffTemp/12); // 何年離れているか? $diffMonth = $diffTemp%12; // 何ヶ月離れているか? $diffYear = ($diffYear == 0)? '':"{$diffYear}年"; $diff = "{$diffYear}{$diffMonth}ヶ月"; return "<p>☆canna生後{$diffDate}日目 ({$diff})☆</p>";
ではでは