Controleer het script $ _REQUEST array om te zien of de " maand " en " jaar " variabelen werden ingesteld . Zo niet , zet ze op de waarden van vandaag en toe te wijzen aan variabelen met de naam $ maand en $ jaar .
If ( ! Isset ( $ _REQUEST [ ' maand ' ] ) ) $ _REQUEST [ 'maand' ] = date ( " n " ) if ( isset ( $ _REQUEST ! [ 'jaar' ] ) ) $ _REQUEST [ 'jaar' ] = date ( " Y " ) ; $ maand = $ _REQUEST [ ' maand ' ] ; $ jaar = $ _REQUEST [ ,"" jaar " ] ;
datum
( " n ") geeft de numerieke maand , en de datum ( "Y ") geeft het viercijferige jaar . Zie de " PHP Handleiding : date " . Documentatie gekoppeld in de sectie Verwijzingen voor een volledige lijst van formatteren touwtje tekens
3
Genereer een tijdstempel , met mktime ( ) , voor de eerste dag van de voorwaarde maand en jaar . Stel de tijd parameters op " 0 . " Het is niet noodzakelijk voor het afdrukken van een kalender
$ timestamp
mktime = ( 0 , 0 , 0 , $ maand , 1 , $ jaar ) .
4
m variabelen houden de naam van de maand ( $ monthtxt ) , de numerieke laatste dag van de maand ( $ laatste ) , en de numerieke dag van de week de eerste dag van de maand valt op ( $ firstdow , waar zondag is " 0 " ) . < br >
$ monthtxt = date ( " F " , $ timestamp ) ; $ laatste = date ( " t" , $ timestamp ) ; $ firstdow = date ( " w " , $ timestamp ) ; ? >
Goedkope 5
Maak de kalender header , het afdrukken van de maand ( $ monthtxt ) en het jaar ( $ jaar ) boven een tafel met zeven kolommen overgoten met dag - van - de - week kolomkoppen .
< ; ? ? h2 > 6 Start een lus om door elke cel van de tabel in de kalender . De waarde $ d tellen door het aantal tabelcellen uit de cel linksboven ( " 0 " ) van de tabel door de cel met de laatste dag van de maand ( $ laatste + $ firstdow - 1 ) .
7 Bereken de dag van de maand die wordt afgedrukt in de tabel < br >
$ curday = $ d - $ firstdow + 1 ;
8
Start een nieuwe tabelrij als de huidige telling landt op de eerste kolom van de tabel . $ d % 7 geeft de rest van $ d /7 . Wanneer $ d % 7 is 0 , de telling is op de " Sunday " kolom
if ( ( $ d % 7 ) == 0 ) echo "
\\ n" ; .
< br > 9 Print de tabelcel . Wanneer $ d tot heeft gerekend tot de eerste tabel cel met een geldige dag van de maand , zal het de waarde voor die dag in de cel van de tabel af te drukken
echo
"
" ; . If ( $ d > = $ firstdow ) echo $ curday ; echo " < /td > \\ n" ; Eind 10 de tabelrij als de huidige telling landt op de laatste kolom van de tabel . Wanneer $ d % 7 is 6 , de telling is op de "Saturday " kolom if ( ( $ d % 7 ) == 6 ) echo " < /tr> \\ n" ; . Eind 11 de lus , PHP container , en de tafel . } ? > < /table > 12 Probeer uw PHP-script . Noem het met de maand en het jaar aan een agenda voor een bepaalde maand ( bijvoorbeeld http://yoursite.com/calendar.php?month=2&year=2008 ) afdrukken .
|