- ベストアンサー
PHPで月末の判断
PHPを使用し毎月の月末(22時~)判断をさせたいのですが、 (月末(22時~)のみバッチを走らせるということです。。) よい方法をご存知の方は教えてください。 宜しくお願い致します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その月の日数はdate関数のt、本日はjで取得出来ますので、月末判断は if( date("j") == date("t")){ //月末です }else{ //月末じゃないです } となります。 DATE関数 http://jp2.php.net/date 自動的に動かすと言う事でしたらcronで実行するのが一般的でしょうから、このスクリプトをwget等でたたけばいいと思います。 なお、cronで月末を指定するスクリプトも見つかりました。 http://hain.jp/index.php/tech-j/2006/10/17/p91 参考まで。
その他の回答 (3)
- php504
- ベストアンサー率42% (926/2160)
timestampに24時間(24*60*60)加えてgetdate( ) やlocaltime( )で日と時を取得したらどうでしょう
- yambejp
- ベストアンサー率51% (3827/7415)
たしかにバッチを走らせる・・・が微妙ですね。 単にバッチを走らせるならcronですが、phpが読まれたときに 分岐をいれるということなら以下のようになります。 <?PHP $now=mktime(); $today=date("Y/m/d",$now); $monthEnd=date("Y/m/d",mktime(0,0,0,date("m",$now)+1,0,date("Y",$now))); if($today==$monthEnd) print "月末"; ?> ようは、今日の翌月の0日(1日の一日前)が今月末日なので。
- JAWS55
- ベストアンサー率38% (176/452)
PHPで作成したスクリプトをcornで月末に実行すればいいのでは?