【PHP】strtotime()に00日を渡すと、前月最終日の値が返却される。

はまったのでメモ。

たとえば。

$time = strtotime('2013-10-01');
var_dump(date('Y-m-d H:i:s', $time));
↓
string(19) "2013-10-01 00:00:00"

これは当然。
しかしこの状態で日付を00にした場合。

$time = strtotime('2013-10-00');
var_dump(date('Y-m-d H:i:s', $time));
↓
string(19) "2013-09-30 00:00:00"

00を指定した場合、1日前と判定される模様。
すなわち9月30日が返却される。

微妙にはまったので今後は気をつけよう。