当前位置:Gxlcms > PHP教程 > PHP设计日历类一(38)

PHP设计日历类一(38)

时间:2021-07-01 10:21:17 帮助过:23人阅读

由两个文件组成:

第一个test.php


php
    include "calendar.class.php";

    $calendar=new Calendar;

    $calendar->out();

第二个日历类:calendar.class.php

php
class Calendar {
        private $year; //当前的年private $month; //当前的月private $start_weekday; //当月的第一天对应的是周几private $days; //当前月一共多少天        function __construct(){
            $this->year=isset($_GET["year"]) ? $_GET["year"] : date("Y");
            $this->m>"month"]) ? $_GET["month"] : date("m");
            
            $this->start_weekday=date("w", mktime(0, 0, 0, $this->month, 1, $this->year));
            $this->days=date("t", mktime(0, 0, 0, $this->month, 1, $this->year));
        }

        function out(){
            echo '';
            $this->chageDate("test.php");
            $this->weeksList();
            $this->daysList();
            echo '
'; } private function weeksList(){ $week=array('','','','','','',''); echo ''; for($i=0; $i) echo ''.$week[$i].''; echo ''; } private function daysList(){ echo ''; //
输出空格(当前一月第一天前面要空出来)for($j=0; $j<$this->start_weekday; $j++) echo ' '; for($k=1; $k<=$this->days; $k++){ $j++; if($k==date('d')) echo ''.$k.''; else echo ''.$k.''; if($j%7==0) echo ''; } //后面几个空格while($j%7!==0){ echo ' '; $j++; } echo ''; } private function prevYear($year, $month){ $year=$year-1; if($year < 1970) $year = 1970; return"year={$year}&m/span>"; } private function prevMonth($year, $month){ if($month == 1) { $year = $year -1; if($year < 1970) $year = 1970; $month=12; }else{ $month--; } return"year={$year}&m/span>"; } private function nextYear($year, $month){ $year = $year + 1; if($year > 2038) $year = 2038; return"year={$year}&m/span>"; } private function nextMonth($year, $month){ if($m>12){ $year++; if($year > 2038) $year=2038; $month=1; }else{ $month++; } return"year={$year}&m/span>"; } private function chageDate($url=""){ echo ''; echo ''.$this->prevYear($this->year, $this->month).'">'.'<<'.''; echo ''.$this->prevMonth($this->year, $this->month).'">'.'<'.''; echo ''; echo ''; echo ''; echo ''.$this->nextYear($this->year, $this->month).'">'.'>>'.''; echo ''.$this->nextMonth($this->year, $this->month).'">'.'>'.''; echo ''; } }

效果:

以上就介绍了PHP设计日历类一 (38),包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

人气教程排行