hur man skapar en kalender i php

PHP programmeringsspråk funktioner datum och tid funktioner som förenklar skapa en månadskalender . ”Date () ” returnerar ett formaterat datum , eller delar av ett datum för ett visst UNIX tidstämpel . Den ” mktime () ” returnerar ett Unix- tidsstämpel för ett givet datum och tid . Genom att kombinera de två , kan du hämta namnet på månaden, den första och den sista dagen i månaden , och andra användbara värden vid utskrift din kalender . Skapa en grundläggande kalender , sedan bygga på den för att anpassa den efter dina behov .

Du behöver :
PHP -kod redaktör eller textredigerare

1
Starta din kalender kod genom att sätta standard tidszon för ditt område . . Detta kommer att säkerställa den aktuella månaden och i dag visas korrekt

date_default_timezone_set ( ” America /Denver &#039) ; . ? .
2

Kontrollera skriptets $ _REQUEST array för att se om den ” månad ” och ”år ” variabler sattes upp. Om inte , ställ dem till dagens värden och tilldela variabler som heter $ månad och $ år .

if ( ! isset ( $ _REQUEST [ ” månad ” ] ) ) $ _REQUEST [ ” månad ” ]=datum ( ” n ” );
om $ _REQUEST [ ” Skicka ”]=date ( ”Y ” ) ( isset ( $ _REQUEST [ ” år ” ] ) ! ) ;
$ månad=$ _REQUEST [ ” månad ” ] ;
$ år=$ _REQUEST [ ” Skicka ” ] ;

datum ( ” n ” ) returnerar numeriska månad och dag ( ”Y ” ) returnerar den fyrsiffriga året . Se ” PHP Manual : datum ” . dokumentation knuten i avsnittet Referenser för en komplett lista av formatering sträng tecken
3
Generera en tidsstämpel med hjälp mktime ( ) , för den första dagen . av de medföljande månad och år . Ställ in tiden parametrar till ” 0 ”. Tiden är inte nödvändig för att skriva ut en kalender

$ timestamp=mktime ( 0 , 0 , 0 , $ månad , 1 , $ år) .
4

Skapa variabler för att hålla namnet i månaden ( $ monthtxt ) , faller den numeriska sista dagen i månaden ( $ lastday ) , och den numeriska veckodag den första dagen i den månad ( $ firstdow , där söndagen ”0 ”) .

$ monthtxt=date ( ”F ” , $ timestamp ) ;
$ lastday=date ( ” t ” , $ timestamp ) ;
$ firstdow=date ( ”W” , $ timestamp ) ; ? .
Author 5
Skapa kalender huvudet , skriva i månaden ( $ monthtxt ) och år ( $ år ) över ett bord med sju kolumner toppad med dag-of-the-veckan kolumnrubrikerna.



6 .
Starta en for-loop för att stega igenom varje tabellcell i kalendern . Värdet $ d räknar genom antalet tabellceller från den övre vänstra cellen ( ”0”) i tabellen genom cellen som innehåller den sista dagen i månaden ( $ lastday + $ firstdow-1) .

för ( $ d=0 ; $ d <( $ lastday + $ firstdow ), $ d + + ) ? . {
7

Beräkna dagen i månaden som skrivs in i tabellen

$ curday=$ d-$ firstdow + 1 , . .
8
Starta en ny tabellrad om den nuvarande räkna landar på den första tabellen kolumnen . $ d % 7 returnerar resten av $ d /7 . När $ d % 7 är 0 , är räkna med ”Sunday ”-kolumnen

if ( ( $ d % 7 ) == 0 ) echo ”

\ n ”; .

9 .
Skriv tabellcellen . När $ D har räknat fram till den första tabellen cell som innehåller ett giltigt dagen i månaden kommer den ut värdet för den dagen i tabellcellen

echo ”

\ n ” ; .
10
Avsluta tabellrad om den nuvarande räkna landar på sista tabellkolumn . När $ d % 7 är 6 , är räkna med ” Lördag ” kolumnen

if ( ( $ d % 7 ) == 6 ) echo ”

\ n ”; .

11 .
Avsluta for-loop , PHP containern och den tabellen.

}
? >

S M T W T F S
” .
if ( $ d >=$ firstdow ) echo $ curday ;
echo ”

12 .
Testa dina PHP-skript . Kalla det med månad och år för att skriva ut en kalender för en viss månad ( till exempel http://yoursite. com/calendar. php?month=2 year=2008 ) .

Visited 1 times, 1 visit(s) today

コメント

タイトルとURLをコピーしました