ホームページ  >  記事  >  バックエンド開発  >  PHP の練習: 卓上カレンダー (シンプルなコード、拡張が容易)

PHP の練習: 卓上カレンダー (シンプルなコード、拡張が容易)

WBOY
WBOYオリジナル
2016-06-13 12:02:37829ブラウズ

PHP 演習: カレンダー (シンプルなコード、拡張が容易)

時間をかけて関数と実装アイデアだけに焦点を当ててカレンダー プログラムを作成したため、コードと関数は比較的単純ですが、より簡単です理解して拡張すること。

show() 関数は、カレンダーを表示するために使用されます。値を渡すことで、異なる年と月を表示するように show() 関数を変更できます。

<?php    class Calendar{        public $weekarray = array(&#39;星期日&#39;,&#39;星期一&#39;,&#39;星期二&#39;,&#39;星期三&#39;,&#39;星期四&#39;,&#39;星期五&#39;,&#39;星期六&#39;);        public $firstDay = &#39;&#39;;//当月第一天        public $firstNum = &#39;&#39;;//返回当月第一天对应的星期数字        public $firstDayNum = &#39;&#39;;//当月第一天对应的中文星期                /**        *   指定日是星期几        *   eg:$date=&#39;2014-07-21&#39;        */        public function getWeek($date){            $date = strtotime($date);//strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳            $num = date(&#39;w&#39;,$date);//数字型的星期几,如: "0" (星期日) 至 "6" (星期六)            return $num;        }        /**        *   取得指定月有多少天        *   eg:$month = &#39;2014-07&#39;        */        public function getMonthNum($month){            $month = strtotime($month);            return date(&#39;t&#39;,$month);//指定月份的天数        }                /**        *   显示日历        */        public function show(){            //取得当前日期            $year = date(&#39;Y&#39;);            $month = date(&#39;m&#39;);            $day = date(&#39;d&#39;);            echo &#39;<table border="1" style="text-align:center;">';            echo '<tr><td colspan="7">'.$year.'-'.$month.'</td></tr>';            echo '<tr><th>星期日</th><th>星期一</th><th>星期二</th><th>星期三</th><th>星期四</th><th>星期五</th><th>星期六</th></tr>';            //取得当前月有多少天            $yearMonth = '$year."-".$month';            $monthNum = $this->getMonthNum($yearMonth);            //取得当前月第一天是星期几            $this->firstDay = $year."-".$month."-01";            $this->firstNum = $this->getWeek($this->firstDay);            $this->firstDayNum = $this->weekarray[$this->firstNum];                        echo '<tr>';                for($i=1;$i<=$monthNum+($this->firstNum);$i++){                    echo '<td>';                    if($i >= $this->firstNum+1){                        $a = $i-$this->firstNum;                        if($a == $day){                            echo '<div style="background-color:blue;color:#fff;">'.$a.'</div>';                        }else{                            echo '<div>'.$a.'</div>';                        }                    }                    echo '</td>';                    if($i%7 == 0){//每输出7列就换一行                        echo '</tr>';                    }                }            echo '</table>';        }    }        $calendar = new Calendar();    $calendar->show();

レンダリング:


show() 関数はカレンダーを表示するために使用されます。 show() 関数を変更して、値を渡すことで異なる年と月を表示できます。

拡張子:

この記事の主な知識ポイントは、PHP の date() 関数の使用です。

date() 関数の詳細な説明は次のとおりです。http: //wenku.baidu .com/link?url=OPDGzaCMWgjDE0ya8QlDbLIXX0c11ohUjsoLyRm-cYp7lz-O_7H4XBILv8JfomhbnSxXSW0FhqxYBK0_gn8Nr77XMWp-_st7v8AYecbNZjG

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。