Home  >  Article  >  Backend Development  >  PHP generates monthly calendar code_PHP tutorial

PHP generates monthly calendar code_PHP tutorial

WBOY
WBOYOriginal
2016-07-21 15:55:191016browse

/*  
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("");
        print("P");
        print("".strftime("%b %Y",mktime (0,0,0,$MM,1,$YYYY))."");
        print("N");
        print("");
        print("SunMonTueWedThuFriSat");

        $currentDays = 1;
        for($a=1;$a<=5;$a++){
            print("");
            $diffDays = $firstDay-$lastDay;
            if($firstDay>$lastDay && $currentDays ==1 && ($diffDays<>1)){
                for($x=$lastDay;$x>=0;$x--){
                    $printDays = $days-$x;
                    print("$printDays");
                }
                for($z=1;$z<$firstDay-$lastDay;$z++){
                    print(" ");
                }
                for($y=$firstDay;$y<7;$y++){
                    print("$currentDays");
                    $currentDays++;
                }
            } elseif($firstDay!=0 && $currentDays==1){
                for($z=1;$z<=$firstDay;$z++){
                    print(" ");
                }
                for($y=$firstDay;$y<7;$y++){
                    print("$currentDays");
                    $currentDays++;
                }
            } else {
                for($u=1;$u<=7 && $currentDays<=$days;$u++){
                    print("$currentDays");
                    $currentDays++;
                }
            }
            print("");
        }
        print("");
    }
}
?>

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/318292.htmlTechArticle?php /* FunctionWrittenbyNelsonNeoh@3/2004. Forthosewhowantstoutilizethiscode,pleasedonotremovethisremark. Ifyouhavedoneanyenhancementtothiscode,pleasepostthecopyathttp://www.dev-cl...
Statement:
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