Simple PHP calendar algorithm_PHP tutorial

WBOY
Release: 2016-07-21 14:52:34
Original
1102 people have browsed it

/**
* Calendar
*
* Copyright(c) 2007 by Chen Yixin (Deep Sky). All rights reserved
* To contact the author write to
{@link mailto:shenkong@php.net}
* @author Chen Yixin (Deep Sky)
​*/
 if (function_exists('date_default_timezone_set')) { 
     date_default_timezone_set('Asia/Chongqing'); 
 } 
 $date = isset($_GET['date']) ? $_GET['date'] : date('Y-m-d'); 
 $date = getdate(strtotime($date)); 
 $end = getdate(mktime(0, 0, 0, $date['mon'] + 1, 1, $date['year']) - 1);
 $start = getdate(mktime(0, 0, 0, $date['mon'], 1, $date['year'])); 
 $pre = date('Y-m-d', $start[0] - 1); 
 $next = date('Y-m-d', $end[0] + 86400); 
 $html = '

'; 
 $html .= '
'; 
 $html .= '
'; 
 $html .= '
'; 
 $html .= '
'; 
 $html .= '
'; 
 $arr_tpl = array(0 => '', 1 => '', 2 => '', 3 => '', 4 => '', 5 => '', 6 => '');
 $date_arr = array(); 
 $j = 0; 
 for ($i = 0; $i < $end['mday']; $i++) { 
     if (!isset($date_arr[$j])) { 
         $date_arr[$j] = $arr_tpl; 
     } 
     $date_arr[$j][($i+$start['wday'])%7] = $i+1; 
     if ($date_arr[$j][6]) { 
         $j++; 
     } 
 } 
 foreach ($date_arr as $value) { 
     $html .= '
'; 
     foreach ($value as $v) { 
         if ($v) { 
             if ($v == $date['mday']) { 
                 $html .= '
'; 
             } else { 
                 $html .= '
'; 
             } 
         } else { 
             $html .= '
'; 
         } 
     } 
     $html .= '
'; 
 } 
 $html .= '
-' . $date['year'] . ';' . $date['month'] . '+
' . $v . '' . $v . ' 
'; 
 echo $html;  

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/371563.htmlTechArticle/*** Calendar * * Copyright(c) 2007 by 陈伊鑫(深空). All rights reserved * To contact the author write to {@link mailto:shenkong@php.net } * @author 陈伊鑫(深空)*/ if (fu...
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