[PHP-users 12877] Re: date、 mktime 関数について

Youichi Iwakiri php-users@php.gr.jp
Wed, 29 Jan 2003 14:50:56 +0900


いわきりです

oh@aaron.co.jp wrote in <20030129143608.51aa.oh@aaron.co.jp> :
>$this_month_mktime = mktime (0,0,0,date("m"),date("d"),date("Y"));
>$next_month_mktime = mktime (0,0,0,date("m")+1,date("d"),date("Y"));
>echo 
>"/".date("Y",$this_month_mktime)."/".date("m",$this_month_mktime)."/log.txt<br>";
>echo 
>"/".date("Y",$next_month_mktime)."/".date("m",$next_month_mktime)."/log.txt<br>";
>結果:
>/2003/01/log.txt
>/2003/03/log.txt になっています。
>"/2003/02/log.txt"の取り方をご教授頂けますか?

今日、試してますか?

$next_month_mktime = mktime (0,0,0,date("m")+1,date("d"),date("Y"));

は、
$next_month_mktime = mktime (0,0,0,1+1,29,2003);
と等価です。

phpのカレンダー関数は、あり得ない日 2003/02/29 を 2003/03/01と評価して
くれます。

一月後でなく、翌月一日でよければ、
$next_month_mktime = mktime(0,0,0,date("m"),date("t") + 1,date("Y"));
で算出できます。

-- 
Youichi Iwakiri