您现在的位置:主页 > 编程 > Php编程 > 正文

简单的PHP日历算法

时间:2018-03-29 11:23    来源:未知     浏览次数:     
/** * 日历 * * Copyright(c) 2007 by 陈毅鑫(深空). All rights reserved * To contact the author write to {@link mailto:[email protected]} * @author 陈毅鑫(深空) */ if (function_exists(date_default_timezone_set)) { date_default_time
/**  
  * 日历  
  *  
  * Copyright(c) 2007 by 陈毅鑫(深空). All rights reserved  
  * To contact the author write to {@link mailto:[email protected]}  
  * @author 陈毅鑫(深空)  
  */ 
 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 = '<table border="1">';  
 $html .= '<tr>';  
 $html .= '<td><a href="' . $PHP_SELF . '?date=' . $pre . '">-</a></td>';  
 $html .= '<td colspan="5">' . $date['year'] . ';' . $date['month'] . '</td>';  
 $html .= '<td><a href="' . $PHP_SELF . '?date=' . $next . '">+</a></td>';  
 $html .= '</tr>';  
 $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 .= '<tr>';  
     foreach ($value as $v) {  
         if ($v) {  
             if ($v == $date['mday']) {  
                 $html .= '<td><b>' . $v . '</b></td>';  
             } else {  
                 $html .= '<td>' . $v . '</td>';  
             }  
         } else {  
             $html .= '<td>&nbsp;</td>';  
         }  
     }  
     $html .= '</tr>';  
 }  
 $html .= '</table>';  
 echo $html;  






分享到:
相关阅读:
如果你对恒超商务有任何意见或建议,请到交流平台反馈。
企业服务
赞助商
栏目列表:
点击排行