PHP simple calendar program code_PHP tutorial

WBOY
Release: 2016-07-20 11:11:13
Original
1652 people have browsed it

PHP provides the date() function, which provides rich date processing functions. There are two data that need to be obtained now. The first is the total number of days in the month; the second is the day of the week where the first day of the month falls. The numbers represent 0 (indicating Sunday) to 6 (indicating Saturday).

The above data can be easily obtained through the date() function

The code is as follows Copy code
 代码如下 复制代码

$month = $_GET['m']?$_GET['m']:date(‘n’);
$year = $_GET['y']?$_GET['y']:date(‘Y’);

$start_week = date(‘w’,mktime(0,0,0,$month,1,$year));
$day_num = date(‘t’,mktime(0,0,0,$month,1,$year));
$end = false;
?>






for($i = 0; $i<$start_week; $i++)
{
echo “”;
}

$j=1;

while($j<=$day_num)
{
echo “

”;
$week = ($start_week+$j-1)%7;

if($week ==6){
echo “nt

n”;
if($j != $day_num)
echo “tntt”;
else $end = true;
}
$j++;
}
while($week%7 != 6)
{
echo “”;
$week++;
}
if(!$end)
echo “n”;
?>

星期日星期一星期二星期三星期四星期五星期六
$j

<🎜>$month = $_GET['m']?$_GET[' m']:date('n');
$year = $_GET['y']?$_GET['y']:date('Y');<🎜><🎜>$start_week = date('w',mktime(0,0,0,$month,1,$year));
$day_num = date('t',mktime(0,0,0,$month,1, $year));
$end = false;
?>





for($i = 0; $i< ;$start_week; $i++)
{
echo “”;
}$j=1;while($j<=$day_num)
{
echo “”;
$week = ($start_week+$j-1)%7 ;if($week ==6){
echo “ntn”;
if($j != $day_num)
echo “t< ;tr>ntt”;
else $end = true;
}
$j++;
}
while($week%7 != 6)
{
echo “”;
$week++;
}
if(!$end)
echo “n”;
?>
SundayMondayTuesdayWednesdayThursdayFridaySaturday
$j

Advanced class

';
foreach($this->weeks as $title)
>                                                                                                                   echo '< 0, $month, 1, $year);
$starDay = date('w', $firstDay);
$days = date('t', $firstDay);

        echo '

';
        for ($i=0; $i<$starDay; $i++) {
            echo '';
        }
       
        for ($j=1; $j<=$days; $j++) {
            $i++;
            if ($j == date('d')) {
                echo '';
            } else {
                echo '';
            }
            if ($i % 7 == 0) {
                echo '';
            }
        }
       
        echo '';
    }
   
    private function showChangeDate()
    {
       
        $url = basename($_SERVER['PHP_SELF']);
       
        echo '';
 echo '';
 echo '';
        echo '';       
 echo '';
 echo '';       
        echo '';
    }
   
    private function preYearUrl($year,$month)
    {
        $year = ($this->year <= 1970) ? 1970 : $year - 1 ;
       
        return 'year='.$year.'&month='.$month;
    }
   
    private function nextYearUrl($year,$month)
    {
        $year = ($year >= 2038)? 2038 : $year + 1;
       
        return 'year='.$year.'&month='.$month;
    }
   
    private function preMonthUrl($year,$month)
    {
        if ($month == 1) {
            $month = 12;
            $year = ($year <= 1970) ? 1970 : $year - 1 ;
        } else {
            $month--;
        }       
       
        return 'year='.$year.'&month='.$month;
    }
   
    private function nextMonthUrl($year,$month)
    {
        if ($month == 12) {
            $month = 1;
            $year = ($year >= 2038) ? 2038 : $year + 1;
        }else{
            $month++;
        }
        return 'year='.$year.'&month='.$month;
    }
   
}

The code is as follows Copy code

class Calendar
{
private $year;
private $month;
private $weeks = array('日','一','二','三','四',' Five','six');

function __construct($options = array()) {
$this->year = date('Y');
$this-> month = date ('m'); ($key, $vars)) {
                 $this->$key = $value;                                                                 🎜> echo '

';
$this->showChangeDate();
$this->showWeeks();
$this->showDays( $this->year,$this->month);
            echo '
'; '
 '.$j.''.$j.'
'.'<<'.''.'<'.'
';
       
        echo '';
        echo '';       
        echo '
'.'>'.''.'>>'.'

调用方法

 代码如下
 代码如下 复制代码

$params = array();
if (isset($_GET['year']) && isset($_GET['month'])) {
$params = array(
'year' => $_GET['year'],
        'month' => $_GET['month'],
    );
}
$params['url']  = 'demo.php';
require_once 'calendar.class.php';
?>


   
        日历demo
       
       
   
   
       


            $cal = new Calendar($params);
$cal->display();
            ?>   
       

   

复制代码
$params = array();
if (isset($_GET['year']) && isset($_GET['month'])) {
    $params = array(
        'year' => $_GET['year'],
        'month' => $_GET['month'],
    );
}
$params['url']  = 'demo.php';
require_once 'calendar.class.php';
?>

   
        日历demo
       
       
   
   
       

                            $cal = new Calendar($params);
                $cal->display();
            ?>   
       

   

http://www.bkjia.com/PHPjc/444655.htmlwww.bkjia.com
true
http://www.bkjia.com/PHPjc/444655.html
TechArticlePHP提供了date()函数,该函数提供了丰富的日期处理功能。现在需要获得的数据有两个,第一个是当月的总天数;第二个是该月的第一天所在...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template