用 php 编写的日历

网上有很多JavaScript编写的日历,这种日历读取的是本地的时间,可能会不准确。所以想找一个用php编写的,能读取服务器时间的日历,但是一直都找不到合适的,于是我自己尝试着写了一个。
代码拷贝框
<?php
$mnow=(isset($HTTP_GET_VARS['month']) && intval($HTTP_GET_VARS['month'])>0 && intval($HTTP_GET_VARS['month'])<13)?intval($HTTP_GET_VARS['month']):date("m");
$ynow=(isset($HTTP_GET_VARS['year']) && intval($HTTP_GET_VARS['year'])>1969 && intval($HTTP_GET_VARS['year'])<2038)?intval($HTTP_GET_VARS['year']):date("Y");
$mtime=mktime(0,0,0,$mnow,date("d"),$ynow);
$f=date("w",mktime(0,0,0,$mnow,1,$ynow))-1;
echo "<table id=\"calendar\" border=\"0\" cellpadding=\"2\" cellspacing=\"1\">";
echo "<tr><td colspan=\"4\" align=\"center\" class=\"calendartitle\"><a href=\"?".($mnow!=date("m")?"month=".intval($mnow)."&":"")."year=".(intval($ynow)==1970?"1970":intval($ynow)-1)."\"><</a>".$ynow."<a href=\"?".($mnow!=date("m")?"month=".intval($mnow)."&":"")."year=".(intval($ynow)==2037?"2037":intval($ynow)+1)."\">></a></td><td colspan=\"3\" align=\"center\" class=\"calendartitle\"><a href=\"?month=".(intval($mnow)==1?"12":intval($mnow)-1).($ynow!=date("Y")?"&year=".intval($ynow):"")."\"><</a>".date("M",$mtime)."<a href=\"?month=".(intval($mnow)==12?"1":intval($mnow)+1).($ynow!=date("Y")?"&year=".intval($ynow):"")."\">></a></td></tr>";
echo "<tr><td class=\"calendartop\">S</td><td class=\"calendartop\">M</td><td class=\"calendartop\">T</td><td class=\"calendartop\">W</td><td class=\"calendartop\">T</td><td class=\"calendartop\">F</td><td class=\"calendartop\">S</td></tr>";
for($i=0;$i<date("t",$mtime)+$f+1;$i++){
if($i%7==0)echo "<tr>";
echo "<td".(($i-$f==intval(date("d")) && $mnow==date("m") && $ynow==date("Y"))?" id=\"calendartoday\"":"").(($i%7==0
$i%7==6)?" class=\"calendarw\"":"").">";
if($i>$f)echo $i-$f;
echo "</td>";
if($i%7==6)echo "</tr>";
}
if($i%7<6 && $i%7>0)echo "<td colspan=\"".(7-$i%7)."\"></td></tr>";
if($i%7==6)echo "<td></td></tr>";
echo "</table>";
?>
[Ctrl+A 全部选择 然后拷贝]

(0)

相关推荐

  • PHP输出日历表代码实例

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-

  • php+javascript的日历控件

    复制代码 代码如下: <html> <head> <title>js calendar</title> <script language="javascript"> /* Copyright Mihai Bazon, 2002-2005 | www.bazon.net/mishoo * ----------------------------------------------------------- * * The DHT

  • php日历[测试通过]

    比较不错的一款php日历代码 复制代码 代码如下: <?php /** * 日历 * * Copyright(c) 2007 by 陈毅鑫(深空). All rights reserved * To contact the author write to {@link mailto:shenkong@php.net} * @author 陈毅鑫(深空) */ if (function_exists('date_default_timezone_set')) { date_default_time

  • php Calender(日历)代码分享

    代码如下: 复制代码 代码如下: <?php/** *  * 我的日历 * date_default_timezone_set date mktime * @param int $year * @param int $month * @param string $timezone * @author fc_lamp */function myCalender($year = '', $month = '', $timezone = 'Asia/Shanghai'){ date_default_t

  • PHP简单日历实现方法

    本文实例讲述了PHP简单日历实现方法.分享给大家供大家参考,具体如下: 运行效果截图如下: 具体代码如下: <?php /* * Created on 2016-7-20 */ SimCalendar('2016-08');//显示8月份日历 function SimCalendar($date) { /** * 简单日历输出,本函数需要cal_days_in_month的支持 * @param $date Y-m 要输出的日期 */ echo '<table border="1&q

  • php日历制作代码分享

    calendar.class.php 复制代码 代码如下: <?phpclass Calendar {  private $year; //当前的年  private $month; //当前的月  private $start_weekday; //当月的第一天对应的是周几  private $days; //当前月一共多少天 function __construct(){   $this->year=isset($_GET["year"]) ? $_GET["

  • PHP简单创建日历的方法

    本文实例讲述了PHP简单创建日历的方法.分享给大家供大家参考,具体如下: <?php function build_calendar($month,$year) { // Create array containing abbreviations of days of week. $daysOfWeek = array('S','M','T','W','T','F','S'); // What is the first day of the month in question? $firstDa

  • php下实现农历日历的代码

    复制代码 代码如下: php农历日历 <?   ###########################################   #作者: 沈潋(S&S Lab)                      #   #E-mail:shenlian@hotmail.com              #   #web: http://www.focus-2000.com           #   #                                         #

  • PHP实现的简单日历类

    本文实例讲述了PHP实现的简单日历类.分享给大家供大家参考. 具体实现代码如下: 复制代码 代码如下: date_default_timezone_set("etc/gmt-8"); header("Content-type: text/html; charset=utf-8"); class calendar{ var $t = array(); var $datesofmonth = array('1'=>'31','2'=>'28','3'=>

  • php calender(日历)二个版本代码示例(解决2038问题)

    注意32位机有2038问题,所以32位服务器的年限范围1970年~2038年 我们还可以使用DateTime来规避这个问题(这样与32位64位无关了) 复制代码 代码如下: <?php/** *  * 我的日历 * date_default_timezone_set date mktime * @param int $year * @param int $month * @param string $timezone * @author fc_lamp * @blog: fc-lamp.blog

  • PHP 简单日历实现代码

    复制代码 代码如下: <?php $monthoneday=date("Ym")."01"; $oneweekday=date("w",strtotime($monthoneday)); //获得本月1号星期几 $monthday=date("t"); //本月多少天 $startlow=($oneweekday==0)?7:$oneweekday; //从第几列开始 for($a=1,$b=$startlow;$a&l

随机推荐