Hierdie artikel sal jou leer hoe om `n kalender in PHP te maak. Hierlys `n paar gratis PHP kalender skrifte. Of jy kan direk in die werf phpkode.com vir meer gratis PHP tutoriale.
Stappe
1. Versamel die nodige inligting wat belangrik is om die werklike maand te vertoon, en die werklike dag uit te lig. Daarbenewens wil jy ook die werklike maand en jaar vertoon. Om dit te doen, benodig jy 3 spesiale dag insette: die werklike dag, die eerste dag van die werklike maand, die laaste dag van die werklike maand

2. Bepaal watter dag die eerste dag was, hoe lank is die maand, en natuurlik, wat is die werklike dag, met die bogenoemde inligting.
3.
Gebruik die PHP ingeboude funksie: GetDate ()
. Sonder parameters gee hierdie funksie die werklike daginligting in `n skikking soos volg:
Om die laaste dag van die maand te kry met kry datum wat ons moet probeer om die 0 te kry. Dag van die volgende maand. So die kode om die inligting te kry lyk soos volg:
3 | $ eerste dag = getdate ( mktime (0,0,0, $ vandag [ `Mon` ], 1, $ vandag [ `jaar` ])- |
4 | $ LASTDAY = getdate ( mktime (0,0,0, $ vandag [ `Mon` ] +1,0, $ vandag [ `jaar` ])- |
Stap 3.Om `n kalender te vertoon, benodig ons `n tafel met 7 kolomme vir die dae van die week. Die aantal lyne afhangende van die aantal dae en die eerste dag van die maand. Ons benodig egter `n koptekstuur met maand- en jaarinligting, `n subdaglyn met die naam van die dae.
2 | // Skep `n tabel met die nodige opskrifinligting |
3 | eggo `` - |
"-
4 | eggo ` |
`. $ vandag [ `Maand` ]. " - " . $ vandag [ `jaar` ]. " |
---|
`-
`-
`-

Noudat jy die kop van die tafel het, vul die eerste ry. Dit is nie so maklik nie, want jy kan nie net 1 in die eerste sel skryf nie, 2 in die tweede en so aan. Dit werk net as die eerste dag van die maand Maandag was, maar wat is dit nie? Om dit te besluit, benodig ons die dagitem van die eerste dag skikking. Met hierdie inligting kan ons die selle met `n spasie vul indien nodig. Die kode om dit te doen is die volgende:`-
03 | vir ( $ i = 1- $ i < $ eerste dag [ `Way` ]- $ i ++) { |
`-
07 | vir ( $ i = $ eerste dag [ `Way` ]- $ i <= 7- $ i ++) { |
"-
`-
Soos die volgende stap moet ons in die volgende lyne vul. Dit is `n bietjie makliker, ons moet net weet hoeveel volle week ons het en vul `n paar tafelrye soos volg: 02 | $ Fullweek = vloer (( $ LASTDAY [ `May` ]- $ Wetdag ) / 7)- |
04 | vir ( $ i = 0- $ i < $ Fullweek - $ i ++) { |
`-
06 | vir ( $ j = 0- $ j <7- $ j ++) { |
"-
`-
As semi-finale stap moet ons die res van die maand by die laaste reël voeg. In hierdie geval is dit redelik maklik: 02 | as ( $ Wetdag < $ LASTDAY [ `May` ]) { |
`-
04 | vir ( $ i = 0- $ i <7- $ i ++) { |
06 | as ( $ Wetdag <= $ LASTDAY [ `May` ]) { |
"-
`-
`-
Stap 7.Om die kalender klein bietjie lekkerder te maak, sal ons `n paar CSS-ontwerp voorstel. Die CSS-lêer is baie eenvoudig:04 | grens-ineenstorting : inval - |
08 | Border-Collpase: Collpase- |
14 | agtergrondkleur : # F1F3F5 - |
17 | Border-Collpase: Collpase- |
19 | agtergrondkleur : # E9ecef - |
22 | agtergrondkleur : # C22 - |
Die volledige kode wat die CSS gebruik, is die volgende: 01 | "-// w3c // dtd xhtml 1.0 Oorgangs / / en" "DTD / XHTML1-Oorgangs.dtd" >
|
04 | # "Styl / styl.css" rel = "styleheet" tipe = "Teks / CSS" /> |
08 | funksie showcalendar () { |
09 | // kry sleutel dag inligting. |
10 | // Ons benodig die eerste en laaste dag van die maand en die werklike dag |
12 | $ eerste dag = getdate ( mktime (0,0,0, $ vandag [ `Mon` ], 1, $ vandag [ `jaar` ])- |
13 | $ LASTDAY = getdate ( mktime (0,0,0, $ vandag [ `Mon` ] +1,0, $ vandag [ `jaar` ])- |
15 | // Skep `n tabel met die nodige opskrifinligting |
17 | eggo ` |
`. $ vandag [ `Maand` ]. " - " . $ vandag [ `jaar` ]. " |
---|
`-
`-
`-
22 | // vertoon die eerste kalender ry met die korrekte posisionering |
`-
24 | vir ( $ i = 1- $ i < $ eerste dag [ `Way` ]- $ i ++) { |
`-
28 | vir ( $ i = $ eerste dag [ `Way` ]- $ i <= 7- $ i ++) { |
30 | as ( $ Wetdag == $ vandag [ `May` ]) { |
31 | $ klas = `klas ="werkdag"` - |
"-
`-
39 | // kry hoeveel volledige weke in die werklike maand is |
4 | $ Fullweek = vloer (( $ LASTDAY [ `May` ]- $ Wetdag ) / 7)- |
41 | vir ( $ i = 0- $ i < $ Fullweek - $ i ++) { |
`-
43 | vir ( $ j = 0- $ j <7- $ j ++) { |
45 | as ( $ Wetdag == $ vandag [ `May` ]) { |
46 | $ klas = `klas ="werkdag"` - |
"-
`-
55 | // Wys nou die res van die maand |
56 | as ( $ Wetdag < $ LASTDAY [ `May` ]) { |
`-
58 | vir ( $ i = 0- $ i <7- $ i ++) { |
60 | as ( $ Wetdag == $ vandag [ `May` ]) { |
61 | $ klas = `klas ="werkdag"` - |
66 | as ( $ Wetdag <= $ LASTDAY [ `May` ]) { |
"-
`-
`-
75 | eggo ` |
`-
Deel op sosiale netwerke: