php Calender(日历)代码

代码如下:1=2038)23{24$year=date('Y');25}26}else27{28if($year12)36{37$

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

代码如下:

  1 <?php
  2 /**
  3  * 
  4  * 我的日历
  5  * date_default_timezone_set date mktime
  6  * @param int $year
  7  * @param int $month
  8  * @param string $timezone
  9  * @author fc_lamp
 10  * @blog: http://www.cnblogs.com/roucheng/
 11  */
 12 function myCalender($year = '', $month = '', $timezone = 'Asia/Shanghai')
 13 {
 14     
 15     date_default_timezone_set ( $timezone );
 16     $year = abs ( intval ( $year ) );
 17     $month = abs ( intval ( $month ) );
 18     
 19     //是否是32位机
 20     if (is32())
 21     {
 22         if ($year < 1970 or $year >= 2038)
 23         {
 24             $year = date ( 'Y' );
 25         }
 26     } else
 27     {
 28         if ($year <= 0)
 29         {
 30             $year = date ( 'Y' );
 31         }
 32     
 33     }
 34     
 35     if ($month <= 0 or $month > 12)
 36     {
 37         $month = date ( 'm' );
 38     }
 39     
 40     //上一年
 41     $pretYear = $year - 1;
 42     //上一月
 43     $mpYear = $year;
 44     $preMonth = $month - 1;
 45     if ($preMonth <= 0)
 46     {
 47         $preMonth = 1;
 48         $mpYear = $pretYear;
 49     }
 50     
 51     //下一年
 52     $nextYear = $year + 1;
 53     //下一月
 54     $mnYear = $year;
 55     $nextMonth = $month + 1;
 56     if ($nextMonth > 12)
 57     {
 58         $nextMonth = 1;
 59         $mnYear = $nextYear;
 60     }
 61     
 62     //日历头
 63     $html = <<<HTML
 64 <table width="500" border="1">
 65   <tr align="center">
 66     <td><a href="?y=$pretYear">上一年</a></td>
 67     <td><a href="?y=$mpYear&m=$preMonth">上一月</a></td>
 68      <td><a href="?">回到今天</a></td>
 69     <td><a href="?y=$mnYear&m=$nextMonth">下一月</a></td>
 70     <td><a href="?y=$nextYear">下一年</a></td>
 71   </tr>
 72   <tr align="center">
 73     <td colspan="5">{$year}年{$month}月</td>
 74   </tr>
 75   <tr>
 76       <td colspan="5">
 77         <table width="100%" border="1">
 78             <tr align="center">
 79                 <td style="background-color:#DAF0DD;">星期一</td>
 80                 <td style="background-color:#DAF0DD;">星期二</td>
 81                 <td style="background-color:#DAF0DD;">星期三</td>
 82                 <td style="background-color:#DAF0DD;">星期四</td>
 83                 <td style="background-color:#DAF0DD;">星期五</td>
 84                 <td style="background-color:#F60;color:#fff;font-weight: bold;">星期六</td>
 85                 <td style="background-color:#F60;color:#fff;font-weight: bold;">星期天</td>
 86             </tr>
 87 HTML;
 88     
 89     $currentDay = date ( 'Y-m-j' );
 90     
 91     //当月最后一天
 92     $lastday = date ( 'j', mktime ( 0, 0, 0, $nextMonth, 0, $year ) );
 93     
 94     //循环输出天数
 95     $day = 1;
 96     $line = '';
 97     while ( $day <= $lastday )
 98     {
 99         $cday = $year . '-' . $month . '-' . $day;
100         
101         //当前星期几
102         $nowWeek = date ( 'N', mktime ( 0, 0, 0, $month, $day, $year ) );
103         
104         if ($day == 1)
105         {
106             $line = '<tr align="center">';
107             $line .= str_repeat ( '<td>&nbsp;</td>', $nowWeek - 1 );
108         }
109         
110         if ($cday == $currentDay)
111         {
112             $style = 'style="color:red;"';
113         } else
114         {
115             $style = '';
116         }
117         
118         $line .= "<td $style>$day</td>";
119         
120         //一周结束
121         if ($nowWeek == 7)
122         {
123             $line .= '</tr>';
124             $html .= $line;
125             $line = '<tr align="center">';
126         }
127         
128         //全月结束
129         if ($day == $lastday)
130         {
131             if ($nowWeek != 7)
132             {
133                 $line .= str_repeat ( '<td>&nbsp;</td>', 7 - $nowWeek );
134             }
135             $line .= '</tr>';
136             $html .= $line;
137             
138             break;
139         }
140         
141         $day ++;
142     }
143     
144     $html .= <<<HTML
145         </table>    
146     </td>
147   </tr>
148 </table>
149 HTML;
150     return $html;
151 }
152 
153 /**
154  * 
155  * 检测是否是32位机
156  * @author fc_lamp
157  * @blog: fc-lamp.blog.163.com
158  */
159 function is32()
160 {
161     $is32 = False;
162     if (strtotime ( '2039-10-10' ) === False)
163     {
164         $is32 = True;
165     }
166     return $is32;
167 }

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120753.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • sql server 数据库分区分表

    sql server 数据库分区分表sqlserver数据库分区分表作为演示,本文使用的数据库sqlserver2017管理工具sqlservermanagementstudio18,,创建数据库mytest,添加Test表,Test表列为id和name,具体可以自行创建sqlserver数据库分区分表具体步骤如下1、选择数据库选择右键新建查询,内容如下–数据库分区分表–1、给数据库mytest添加文件分组ALTERDATABASEmytestaddfilegroupgroup

    2022年5月5日
  • 用Python读取CSV文件的5种方式

    用Python读取CSV文件的5种方式典型的数据集stocks.csv:一个股票的数据集,其实就是常见的表格数据。有股票代码,价格,日期,时间,价格变动和成交量。这个数据集其实就是一个表格数据,有自己的头部和身体。第一招:简单的读取我们先来看一种简单读取方法,先用csv.reader()函数读取文件的句柄f生成一个csv的句柄,其实就是一个迭代器,我们看一下这个reader的源码:喂给reader一个可迭代对象或者是文件的object,然后返回一个可迭代对象。首先读取csv文件,然后用csv.reader生成一个csv迭代器

    2022年7月21日
  • Word中怎样删除分节符而不影响前节页面设置

    Word中怎样删除分节符而不影响前节页面设置

    2021年11月6日
  • java 重写和重载的区别[通俗易懂]

    java 重写和重载的区别[通俗易懂]classAnimal{ privateStringname; privateStringsex; privateintage; publicAnimal(){ //TODOAuto-generatedconstructorstub } publicvoidmove() { System.out.println("animalmove…

    2022年9月9日
  • eclipse如何使用svn_pr入门教程

    eclipse如何使用svn_pr入门教程一、Windows下安装SVN安装过程直接点击下一步即可,不想用默认位置的话,可以更改安装位置。二、检查安装是否成功1、检查环境变量中是否自动配置了系统变量。(默认是自动配置的)。2、安装根目录其中bin目录下是一些可执行文件(.exe)3、打开cmd窗口,输入命令svn–version检查版本号,查看安装是否成功。由于已经配置了环境变量,所以可以在任何位置使用svn…

    2022年9月26日
  • 图解Java 垃圾回收机制

    图解Java 垃圾回收机制Java技术体系中所提倡的自动内存管理最终可以归结为自动化地解决了两个问题:给对象分配内存以及回收分配给对象的内存。垃圾回收机制的引入有效地解决了内存的回收问题使得他们在编写程序的时候不再需要考虑内存管理。本文首先着重介绍了判断一个对象是否可以被回收的两种经典算法,并详述了四种典型的垃圾回收算法的基本思想及其直接应用——垃圾收集器,最后结合内存回收策略介绍了内存分配规则。

    2022年6月11日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号