Hvordan bygge en enkel PHP-kalender

01 av 05

Få kalendervariabler

kvinne som jobber på datamaskinengilaxia/Getty Images





' id='mntl-sc-block-image_2-0-1' />

gilaxia/Getty Images



PHP-kalendere kan være nyttige. Du kan gjøre ting så enkelt som å vise datoen, og så komplisert som å sette opp et online bookingsystem. Denne artikkelen viser hvordan du genererer en enkel PHP-kalender. Når du forstår hvordan du gjør dette, vil du kunne bruke de samme konseptene på komplekse kalendere du kanskje trenger.

|_+_| 02 av 05

Ukedager

Her tar du en nærmere titt på månedens dager og forbereder deg på å lage kalendertabellen. Det første er å bestemme hvilken ukedag den første i måneden faller. Med den kunnskapen bruker du bytte om () funksjon for å bestemme hvor mange tomme dager som trengs i en kalender før den første dagen.



Deretter teller du antall dager i måneden. Når du vet hvor mange tomme dager som trengs og hvor mange totalt dager det er i måneden, kan kalenderen genereres.

03 av 05

Overskrifter og tomme kalenderdager

Den første delen av denne koden gjenspeiler tabellkodene, månedsnavnet og overskriftene for ukedagene. Så starter det a mens loop som gjenspeiler tomme borddetaljer, en for hver blank dag å telle ned. Når de tomme dagene er unnagjort, stopper det. Samtidig er $day_count går opp med 1 hver gang gjennom loopen. Dette holder tellingen for å unngå å sette mer enn syv dager i uken.

04 av 05

Dager i måneden

En annen mens loop fyller inn dagene i måneden, men denne gangen teller det opp til den siste dagen i måneden. Hver syklus gjengir en tabelldetalj med dagen i måneden, og den gjentas til den når den siste dagen i måneden.

Løkken inneholder også en betinget uttalelse . Dette sjekker om ukedagene har nådd 7 – slutten av uken. Hvis den har det, starter den en ny rad og tilbakestiller telleren til 1.



05 av 05

Fullfører kalenderen

En siste mens-løkke gjør kalenderen ferdig. Denne fyller ut resten av kalenderen med tomme borddetaljer om nødvendig. Deretter er bordet lukket og manuset ferdig.