2008年7月 1日

[PHP-users 33727] Re:プログラムが劣化することはあるのでしょうか

パパぱふぅです。

問題は解決したようですね。老婆心ながら――。

>$day = 365*$y + $y/4 - $y/100 + $y/400 + 306*($m+1)/10 + $d - 428;

この式ですが、閏年の月末・月初の曜日に不安を感じます。
というのは、このままだと、曜日を導出する公式として有名な「ツェラーの公式」

(Wikipedia参照のこと)と、式が一致しなくなる日付があるためです。
int でキャスティングするか、除算部分の小数点以下を切り捨てる必要があるの
ではないかと思います。

すでにアドバイスが出ていますが、date 関数を使うのが無難だと思います。

==========================
パパぱふぅ
http://www.pahoo.org/
==========================

_______________________________________________
PHP-users mailing list PHP-users@xxxxx
http://ml.php.gr.jp/mailman/listinfo/php-users
PHP初心者のためのページ - 質問する前にはこちらをお読みください
http://oldwww.php.gr.jp/php/novice.php3


投稿者 xml-rpc : 2008年7月 1日 12:55
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/74847
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。