PHP自动生成月历代码

<?php
/* 
Function Written by Nelson Neoh @3/2004. 
For those who wants to utilize this code, please do not remove this remark. 
If you have done any enhancement to this code, please post the copy at http://www.dev-club.com PHP board.  Thank you.

Function usage: calendar(Month,Year)
*/

function calendar($MM,$YYYY){
    if($MM=="") $MM = date("m");
    if($YYYY=="") $YYYY = date("Y");
    if(checkdate($MM,1,$YYYY)){
        $stringDate = strftime("%d %b %Y",mktime (0,0,0,$MM,1,$YYYY));
        $days = strftime("%d",mktime (0,0,0,$MM+1,0,$YYYY));
        $firstDay = strftime("%w",mktime (0,0,0,$MM,1,$YYYY));
        $lastDay = strftime("%w",mktime (0,0,0,$MM,$days,$YYYY));
        $printDays = $days;
        $preMonth = strftime("%m",mktime (0,0,0,$MM-1,1,$YYYY));
        $preYear = strftime("%Y",mktime (0,0,0,$MM-1,1,$YYYY));
        $nextMonth = strftime("%m",mktime (0,0,0,$MM+1,1,$YYYY));
        $nextYear = strftime("%Y",mktime (0,0,0,$MM+1,1,$YYYY));
        print("<table border=\"1\" cellpadding=\"1\" cellspacing=\"1\">");
        print("<tr><th valign=\"top\"><a href=\"".$_SERVER['PHP_SELF']."?NB=".$_GET["NB"]."&MM=".$preMonth."&YY=".$preYear."\">P</a></th>");
        print("<th colspan=\"5\" valign=\"top\">".strftime("%b %Y",mktime (0,0,0,$MM,1,$YYYY))."</th>");
        print("<th valign=\"top\"><a href=\"".$_SERVER['PHP_SELF']."?NB=".$_GET["NB"]."&MM=".$nextMonth."&YY=".$nextYear."\">N</a></th></tr>");
        print("<tr style=\"font-family: Verdana; font-size:x-small\">");
        print("<th>Sun</th><th>Mon</th><th>Tue</th><th>Wed</th><th>Thu</th><th>Fri</th><th>Sat</th></tr>");

$currentDays = 1;
        for($a=1;$a<=5;$a++){
            print("<tr align=\"left\" valign=\"top\" style=\"font-family: Verdana; font-size:x-small\">");
            $diffDays = $firstDay-$lastDay;
            if($firstDay>$lastDay && $currentDays ==1 && ($diffDays<>1)){
                for($x=$lastDay;$x>=0;$x--){
                    $printDays = $days-$x;
                    print("<td>$printDays</td>");
                }
                for($z=1;$z<$firstDay-$lastDay;$z++){
                    print("<td> </td>");
                }
                for($y=$firstDay;$y<7;$y++){
                    print("<td>$currentDays</td>");
                    $currentDays++;
                }
            } elseif($firstDay!=0 && $currentDays==1){
                for($z=1;$z<=$firstDay;$z++){
                    print("<td> </td>");
                }
                for($y=$firstDay;$y<7;$y++){
                    print("<td>$currentDays</td>");
                    $currentDays++;
                }
            } else {
                for($u=1;$u<=7 && $currentDays<=$days;$u++){
                    print("<td>$currentDays</td>");
                    $currentDays++;
                }
            }
            print("</tr>");
        }
        print("</table>");
    }
}
?>

(0)

相关推荐

  • PHP自动生成月历代码

    <?php/*  Function Written by Nelson Neoh @3/2004.  For those who wants to utilize this code, please do not remove this remark.  If you have done any enhancement to this code, please post the copy at http://www.dev-club.com PHP board.  Thank you. Func

  • SpringBoot项目使用mybatis-plus逆向自动生成全套代码

    目录 1.在你的SpringBoot项目下新建子模块项目 2.在此模块下新建一个包与一个java类 类名: CodeGenerator 3.在 resources 下新建 文件夹,用来存放 mapper文件 4.配置CodeGenerator类 5.启动代码生成类main方法 6.删除文件 1.在你的SpringBoot项目下新建子模块项目 pom.xml添加以下依赖: <properties> <java.version>1.8</java.version> <

  • iOS进阶之xib上控件自动生成纯代码

    最近公司写了一新项目,写完项目总结时发现,大部分时间都浪费在纯代码写一些简单的控件上,用xib布局吧,还怕为后期的维护给自己挖坑,总是纠结到底用纯代码,还是xib呢,纠结来纠结去突然灵感乍现? 为什么不能用xib布局,让它自动生成相应的代码呢,安卓就有这类似的功能- -!!想到就着手开干,写了一个自动生成的工具,废话不多说介绍下我自己写的小工具 因为还不成熟,就先不发布到cocoapods 了,就一个动态库,直接拖进工程即可,有兴趣的小伙伴可以到网盘下载体验一下 demo下载地址 下面介绍下怎么

  • python实现自动生成C++代码的代码生成器

    遇到的问题 工作中遇到这么一个事,需要写很多C++的底层数据库类,但这些类大同小异,无非是增删改查,如果人工来写代码,既费力又容易出错:而借用python的代码自动生成,可以轻松搞定: (类比JAVA中的Hibernate自动生成的数据库底层操作代码) 下面介绍使用python字符串替换的方法: Python字符串替换的几种方法 1. 字符串替换 将需要替换的内容使用格式化符替代,后续补上替换内容: template = "hello %s , your website is %s "

  • PHP生成月历代码

    <?php /*   Function Written by Nelson Neoh @3/2004.   For those who wants to utilize this code, please do not remove this remark.   If you have done any enhancement to this code, please post the copy at http://www.dev-club.com PHP board.  Thank you.

  • MyBatis-plus+达梦数据库实现自动生成代码的示例

    先说点什么 mybatis-plus是一款增强版的mybatis,功能强大,可以很大程度的简化开发. 然而达梦数据库比较小众,虽然官方说mybatis-plus支持达梦数据库,但是使用起来遇到了很多问题. 这篇文章主要讲如何使用mybatis-plus访问达梦数据库,并使用逆向工程自动生成代码. =.=对了 这是个使用spring boot的项目. (配置)POM文件,引入所需要的依赖 <dependencies> <dependency> <groupId>org.s

  • 使用MyBatisPlus自动生成代码后tomcat运行报错的问题及解决方法

    自动生成的代码 报错 解决办法:把自动xml文件中自动生成的二级缓存注释掉 总结 到此这篇关于使用MyBatisPlus自动生成代码后tomcat运行报错的问题及解决方法的文章就介绍到这了,更多相关MyBatisPlus自动生成代码tomcat运行报错内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

  • 自动生成代码controller tool的简单使用

    目录 介绍 controller-tools 介绍 在上一篇code-generator简单介绍中重点介绍了如何使用code-generator来自动生成代码,通过自动生成的代码可以帮助我们像访问k8s内置资源那样来操作我们的CRD,其实就是帮助我们生成ClientSet.Informer.Lister等工具包. 但是我们需要自己定义types.go文件以及需要自己去编写crd文件.工作量其实也是很大的,那么有没有工具像code-generator那样帮助我们生成代码呢?答案是肯定的,那就是接下

  • Mybatis如何自动生成sql语句

    目录 Mybatis自动生成sql语句 Mybatis的动态sql语句 if标签的使用 where标签的使用 foreach标签的使用 sql语句的简化编写 Mybatis自动生成sql语句 创建maven项目,将该配置文件运行即可生成 sql 语句 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org/

  • js自动生成对象的属性示例代码

    例如 我们有如下这么一个对象 复制代码 代码如下: var obj = { a:{ b:"bb" } } 但是我们现在想给 obj 对象增加如下属性 obj.a.b.c.d.f="ff" ; 我们一般会如下做,obj.a.b.c={},obj.a.b.c.d={} ,obj.a.b.c.d.f="ff" ;但是如果我的属性很多,这样的方法时不可行的.现在提供一个自动生成对象属性的方法 复制代码 代码如下: function autoCreateO

随机推荐