Hur man skapar en kalender i php

Den här artikeln kommer att lära dig hur du gör en kalender i PHP. Här lista några gratis PHP-kalenderskript. Eller du kan direkt till webbplatsen phpkode.com för mer gratis php tutorials.

Steg

  1. Bild med titeln Skapa en kalender i PHP Steg 1
1. Samla den nödvändiga informationen som är viktig för att visa den faktiska månaden och markera den aktuella dagen. Förutom detta vill du också visa den faktiska månaden och året. För att göra detta behöver du 3 speciella daginmatningar: den aktuella dagen, den första dagen i den faktiska månaden, den sista dagen i den faktiska månaden
  • Bild med titeln Skapa en kalender i PHP Steg 2
    2. Bestäm vilken dag som var den första dagen, hur länge är månaden, och det är självklart den aktuella dagen, med ovanstående information.
  • 3. Använd den inbyggda PHP: GetDate (). Utan parametrar returnerar den här funktionen den aktuella dagen informationen i en array enligt följande:
    01Array
    02(
    03 [sekunder] => 40
    04 [minuter] => 58
    05 [HOURS] => 21
    06 [may] => 17
    07 [wday] => 2
    08 [MON] => 6
    09 [år] => 2003
    10 [yday] => 167
    11 [Veckodag] => Tisdag
    12 [månad] => Juni
    13 [0] => 1055901520
    14)
    För att få den sista dagen i månaden med få datum måste vi försöka få 0. dag i nästa månad. Så koden för att få informationen ser ut så här:
    1
    2 $ Idag= getdat()-
    3 $ Första= getdat(mktime(0,0,0,$ Idag["mån"], 1,$ Idag[`år`]))-
    4 $ lastdag= getdat(mktime(0,0,0,$ Idag["mån"] +1,0,$ Idag[`år`]))-
    5?>
    Steg 3.För att visa en kalender behöver vi ett bord med 7 kolumner för veckodagen. Antalet linjer beroende på antalet dagar och den första dagen i månaden. Men vi behöver en rubrik med månad och år information, en underrehängslinje med namnet på dagarna.
    1
    2 // Skapa ett bord med nödvändiga rubrikinformation
    3 eko``-"-
    4 eko`
    `.$ Idag[`månad`Anklagelse." - ".$ Idag[`år`Anklagelse."
    `-
    5 eko`
    `-
    6 eko`MoTuViTh
    `-
    7 eko`FrSaSu
    8?>
    Bild med titeln Skapa en kalender i PHP Steg 3
  • Nu när du har rubriken i bordet, fyll den första raden. Det är inte så lätt som du inte bara kan skriva 1 i den första cellen, 2 i den andra och så vidare. Det fungerar bara om den första dagen i månaden var måndag, men vad om inte? För att bestämma detta behöver vi dagsobjektet från första dagen. Med denna information kan vi fylla cellerna med ett utrymme om det behövs. Koden för att göra detta är följande:
    01
    `-
    02 eko`
    03 för($ i= 1-$ i<$ Första[`WDAY`Anklagelse-$ i++{
    `-
    04 eko`
    05 }
    06 $ aktigen= 0-
    07 för($ i=$ Första[`WDAY`Anklagelse-$ i<= 7-$ i++{
    08 $ aktigen++-
    "-
    09 eko"$ aktigen
    10 }
    `-
    11 eko`
    12?>
    Bild med titeln Skapa en kalender i PHP Steg 4
  • Som nästa steg måste vi fylla i följande rader. Det är lite lättare, vi behöver bara veta hur många hela veckan vi har och fyller några bordrader enligt följande:
    01
    02 $ fullweeks= golv(($ lastdag[`may`Anklagelse-$ aktigen) / 7)-
    03  
    04 för($ i= 0-$ i<$ fullweeks-$ i++{
    `-
    05 eko`
    06 för($ j= 0-$ j<7-$ j++{
    07 $ aktigen++-
    "-
    08 eko"$ aktigen
    09 }
    `-
    10 eko`
    11 }
    12
    13?>
    Bild med titeln Skapa en kalender i PHP Steg 5
  • Som halvfiltigt steg måste vi lägga resten av månaden till den sista raden. I det här fallet är det ganska enkelt:
    01
    02 om($ aktigen< $ lastdag[`may`]) {
    `-
    03 eko`
    04 för($ i= 0- $ i<7-$ i++{
    05 $ aktigen++-
    06 om($ aktigen<= $ lastdag[`may`]) {
    "-
    07 eko"$ aktigen
    08 }
    09 annan{
    `-
    10 eko`
    11 }
    12 }
    `-
    13 eko`
    14 }
    15?>
    Steg 7.För att göra kalendern lite trevligare kommer vi att introducera lite CSS-design. CSS-filen är väldigt enkel:
    01tabell {
    02 bredd:210px-
    03 gräns:0pxfast# 888-
    04 Border-Collapse:kollaps-
    05}
    06td {
    07 bredd:30px-
    08 Border-Collpase: Collpase-
    09 gräns:1pxfast# 888-
    10 textjustera:rätt-
    11 padding-höger:5px-
    12}
    13.dagar {
    14 bakgrundsfärg: # F1F3F5-
    15}
    16th {
    17 Border-Collpase: Collpase-
    18 gräns:1pxfast# 888-
    19 bakgrundsfärg: # E9ecef-
    20}
    21.ACDAGA {
    22 bakgrundsfärg: # C22-
    23 font-vikt:djärv-
    24}
    Bild med titeln Skapa en kalender i PHP Steg 6
  • Den fullständiga koden med CSS är följande:
    01"-// w3c // dtd xhtml 1.0 övergång // en""DTD / XHTML1-övergång.dtd">
    02
    03
    04 #"stil / stil.css"rel ="stylesheet"typ ="Text / CSS"/>
    05
    06
    07
    08fungerashowcalendar () {
    09 // få nyckeldagsinformation.
    10 // Vi behöver den första och sista dagen i månaden och den aktuella dagen
    11 $ Idag= getdat()-
    12 $ Första= getdat(mktime(0,0,0,$ Idag["mån"], 1,$ Idag[`år`]))-
    13 $ lastdag= getdat(mktime(0,0,0,$ Idag["mån"] +1,0,$ Idag[`år`]))-
    14
    15 // Skapa ett bord med nödvändiga rubrikinformation
    "-
    16 eko``-
    17 eko`
    `.$ Idag[`månad`Anklagelse." - ".$ Idag[`år`Anklagelse."
    `-
    18 eko`
    `-
    19 eko`MoTuViTh
    `-
    20 eko`FrSaSu
    21
    22 // visa den första kalenderraden med korrekt positionering
    `-
    23 eko`
    24 för($ i= 1-$ i<$ Första[`WDAY`Anklagelse-$ i++{
    `-
    25 eko`
    26 }
    27 $ aktigen= 0-
    28 för($ i=$ Första[`WDAY`Anklagelse-$ i<= 7-$ i++{
    29 $ aktigen++-
    30 om($ aktigen== $ Idag[`may`]) {
    31 $ klass= `class ="omdag"`-
    32 } annan{
    33 $ klass= -
    34 }
    "-
    35 eko"$ aktigen
    36 }
    `-
    37 eko`
    38  
    39 // få hur många kompletta veckor är i den faktiska månaden
    40 $ fullweeks= golv(($ lastdag[`may`Anklagelse-$ aktigen) / 7)-
    41 för($ i= 0-$ i<$ fullweeks-$ i++{
    `-
    42 eko`
    43 för($ j= 0-$ j<7-$ j++{
    44 $ aktigen++-
    45 om($ aktigen== $ Idag[`may`]) {
    46 $ klass= `class ="omdag"`-
    47 } annan{
    48 $ klass= -
    49 }
    "-
    50 eko"$ aktigen
    51 }
    `-
    52 eko`
    53 }
    54  
    55 // visa nu resten av månaden
    56 om($ aktigen< $ lastdag[`may`]) {
    `-
    57 eko`
    58 för($ i= 0- $ i<7-$ i++{
    59 $ aktigen++-
    60 om($ aktigen== $ Idag[`may`]) {
    61 $ klass= `class ="omdag"`-
    62 } annan{
    63 $ klass= -
    64 }
    65  
    66 om($ aktigen<= $ lastdag[`may`]) {
    "-
    67 eko"$ aktigen
    68 }
    69 annan{
    `-
    70 eko`
    71 }
    72 }
    `-
    73 eko`
    74 }
    75 eko``-
    76}
    77showcalendar ()-
    78?>
    79
    80
  • Dela på det sociala nätverket:
    Liknande