Hur man skapar en kalender i PHP: 7 steg (med bilder)

Innehållsförteckning:

Hur man skapar en kalender i PHP: 7 steg (med bilder)
Hur man skapar en kalender i PHP: 7 steg (med bilder)

Video: Hur man skapar en kalender i PHP: 7 steg (med bilder)

Video: Hur man skapar en kalender i PHP: 7 steg (med bilder)
Video: How to enable SSH on Linux Ubuntu (Easy step by step guide) 2024, April
Anonim

Den här artikeln lär dig hur du gör en kalender i PHP. Här listar några gratis php -kalenderskript. Eller så kan du gå direkt in på webbplatsen PHPKode.com för mer gratis PHP -självstudier.

Steg

Skapa en kalender i PHP Steg 1
Skapa en kalender i PHP Steg 1

Steg 1. Samla in nödvändig information som är viktig för att visa den faktiska månaden och markera den faktiska 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 dagsinmatningar: den faktiska dagen, den första dagen i den faktiska månaden, den sista dagen i den faktiska månaden

Skapa en kalender i PHP Steg 2
Skapa en kalender i PHP Steg 2

Steg 2. Bestäm vilken dag som var den första dagen, hur lång är månaden och, naturligtvis, vilken är den faktiska dagen, med ovanstående information

Steg 3. Använd den inbyggda PHP-funktionen:

getdate ()

. Utan parametrar returnerar den här funktionen aktuell dagsinformation i en array enligt följande:

01

Array

02

(

03

[sekunder] => 40

04

[minuter] => 58

05

[timmar] => 21

06

[mday] => 17

07

[wday] => 2

08

[mån] => 6

09

[år] => 2003

10

[yday] => 167

11

[vardag] => tisdag

12

[månad] => juni

13

[0] => 1055901520

14

)

För att få den sista dagen i månaden med get date måste vi försöka få 0. dagen i nästa månad. Så koden för att få informationen ser ut så här:

1

<? php

2

$ idag

=

getdate

();

3

$ firstDay

=

getdate

(

mktime

(0, 0, 0,

$ idag

[

'mån'

], 1,

$ idag

[

'år'

]));

4

$ lastDay

=

getdate

(

mktime

(0, 0, 0,

$ idag

[

'mån'

]+1, 0,

$ idag

[

'år'

]));

5

?>

Steg 3.

För att visa en kalender behöver vi en tabell med 7 kolumner för veckodagarna. Antalet rader beroende på antalet dagar och den första dagen i månaden. Men vi behöver en rubrikrad med månads- och årsinformation, en underrubrikrad med namnet på dagarna.

1

<? php

2

// Skapa en tabell med nödvändig rubrikinformation

3

eko

''

;

;

$ idag

[

'månad'

].

" - "

$ idag

[

'år'

].

4

eko

'

'

'

;

5

eko

'

'

;

6

eko

'

Mo Tu Vi Th

'

;

7

eko

'

Fr Sa Su

8

?>

Skapa en kalender i PHP Steg 3
Skapa en kalender i PHP Steg 3
  • Nu när du har tabellens rubrik fyller du den första raden. Det är inte så lätt eftersom 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 händer om inte? För att bestämma detta behöver vi dagobjektet från firstDay -arrayen. Med denna information kan vi fylla cellerna med ett mellanslag om det behövs. Koden för att göra detta är följande:

    01

    <? php

    '

    ;

    02

    eko

    '

    03

    för

    (

    $ i

    =1;

    $ i

    <

    $ firstDay

    [

    'wday'

    ];

    $ i

    ++){

    '

    ;

    04

    eko

    '

    05

    }

    06

    $ actday

    = 0;

    07

    för

    (

    $ i

    =

    $ firstDay

    [

    'wday'

    ];

    $ i

    <=7;

    $ i

    ++){

    08

    $ actday

    ++;

    ;

    09

    eko

    $ actday

    10

    }

    '

    ;

    11

    eko

    '

    12

    ?>

    Skapa en kalender i PHP Steg 4
    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 veckor vi har och fylla några tabellrader enligt följande:

    01

    <? php

    02

    $ fullVeckor

    =

    golv

    ((

    $ lastDay

    [

    'mday'

    ]-

    $ actday

    )/7);

    03

    04

    för

    (

    $ i

    =0;

    $ i

    <

    $ fullVeckor

    ;

    $ i

    ++){

    '

    ;

    05

    eko

    '

    06

    för

    (

    $ j

    =0;

    $ j

    <7;

    $ j

    ++){

    07

    $ actday

    ++;

    ;

    08

    eko

    $ actday

    09

    }

    '

    ;

    10

    eko

    '

    11

    }

    12

    13

    ?>

    Skapa en kalender i PHP Steg 5
    Skapa en kalender i PHP Steg 5
  • Som semifinalsteg måste vi lägga till resten av månaden till sista raden. I det här fallet är det ganska enkelt:

    01

    <? php

    02

    om

    (

    $ actday

    <

    $ lastDay

    [

    'mday'

    ]){

    '

    ;

    03

    eko

    '

    04

    för

    (

    $ i

    =0;

    $ i

    <7;

    $ i

    ++){

    05

    $ actday

    ++;

    06

    om

    (

    $ actday

    <=

    $ lastDay

    [

    'mday'

    ]){

    ;

    07

    eko

    $ actday

    08

    }

    09

    annan

    {

    '

    ;

    10

    eko

    '

    11

    }

    12

    }

    '

    ;

    13

    eko

    '

    14

    }

    15

    ?>

    Steg 7.

    För att göra kalendern lite snyggare kommer vi att introducera lite CSS -design. CSS -filen är väldigt enkel:

    01

    tabell {

    02

    bredd

    :

    210px

    ;

    03

    gräns

    :

    0px

    fast

    #888

    ;

    04

    gräns-kollaps

    :

    kollaps

    ;

    05

    }

    06

    td {

    07

    bredd

    :

    30px

    ;

    08

    border-collpase: collpase;

    09

    gräns

    :

    1px

    fast

    #888

    ;

    10

    textjustera

    :

    höger

    ;

    11

    vaddering-höger

    :

    5px

    ;

    12

    }

    13

    .dagar {

    14

    bakgrundsfärg

    :

    #F1F3F5

    ;

    15

    }

    16

    th {

    17

    border-collpase: collpase;

    18

    gräns

    :

    1px

    fast

    #888

    ;

    19

    bakgrundsfärg

    :

    #E9ECEF

    ;

    20

    }

    21

    .actday {

    22

    bakgrundsfärg

    :

    #c22

    ;

    23

    font-vikt

    :

    djärv

    ;

    24

    }

    Skapa en kalender i PHP Steg 6
    Skapa en kalender i PHP Steg 6
  • Den fullständiga koden som använder CSS är följande:

    01

    <! DOCTYPE html PUBLIC

    "-// W3C // DTD XHTML 1.0 Transitional // EN"

    "DTD/xhtml1-transitional.dtd"

    02

    03

    04

    #

    "style/style.css"

    rel =

    "formatmall"

    typ =

    "text/css"

    05

    06

    07

    <? php

    08

    fungera

    showCalendar () {

    09

    // Få viktig daginformation.

    10

    // Vi behöver den första och sista dagen i månaden och den faktiska dagen

    11

    $ idag

    =

    getdate

    ();

    12

    $ firstDay

    =

    getdate

    (

    mktime

    (0, 0, 0,

    $ idag

    [

    'mån'

    ], 1,

    $ idag

    [

    'år'

    ]));

    13

    $ lastDay

    =

    getdate

    (

    mktime

    (0, 0, 0,

    $ idag

    [

    'mån'

    ]+1, 0,

    $ idag

    [

    'år'

    ]));

    14

    15

    // Skapa en tabell med nödvändig rubrikinformation

    16

    eko

    ''

    ;

    ;

    $ idag

    [

    'månad'

    ].

    " - "

    $ idag

    [

    'år'

    ].

    17

    eko

    '

    '

    '

    ;

    18

    eko

    '

    '

    ;

    19

    eko

    '

    Mo Tu Vi Th

    '

    ;

    20

    eko

    '

    Fr Sa Su

    21

    22

    // Visa den första kalenderaden med korrekt positionering

    '

    ;

    23

    eko

    '

    24

    för

    (

    $ i

    =1;

    $ i

    <

    $ firstDay

    [

    'wday'

    ];

    $ i

    ++){

    '

    ;

    25

    eko

    '

    26

    }

    27

    $ actday

    = 0;

    28

    för

    (

    $ i

    =

    $ firstDay

    [

    'wday'

    ];

    $ i

    <=7;

    $ i

    ++){

    29

    $ actday

    ++;

    30

    om

    (

    $ actday

    ==

    $ idag

    [

    'mday'

    ]) {

    31

    $ klass

    =

    'class = "actday"'

    ;

    32

    }

    annan

    {

    33

    $ klass

    =

    ;

    34

    }

    ;

    35

    eko

    $ actday

    36

    }

    '

    ;

    37

    eko

    '

    38

    39

    // Få hur många hela veckor som är i själva månaden

    40

    $ fullVeckor

    =

    golv

    ((

    $ lastDay

    [

    'mday'

    ]-

    $ actday

    )/7);

    41

    för

    (

    $ i

    =0;

    $ i

    <

    $ fullVeckor

    ;

    $ i

    ++){

    '

    ;

    42

    eko

    '

    43

    för

    (

    $ j

    =0;

    $ j

    <7;

    $ j

    ++){

    44

    $ actday

    ++;

    45

    om

    (

    $ actday

    ==

    $ idag

    [

    'mday'

    ]) {

    46

    $ klass

    =

    'class = "actday"'

    ;

    47

    }

    annan

    {

    48

    $ klass

    =

    ;

    49

    }

    ;

    50

    eko

    $ actday

    51

    }

    '

    ;

    52

    eko

    '

    53

    }

    54

    55

    // Visa nu resten av månaden

    56

    om

    (

    $ actday

    <

    $ lastDay

    [

    'mday'

    ]){

    '

    ;

    57

    eko

    '

    58

    för

    (

    $ i

    =0;

    $ i

    <7;

    $ i

    ++){

    59

    $ actday

    ++;

    60

    om

    (

    $ actday

    ==

    $ idag

    [

    'mday'

    ]) {

    61

    $ klass

    =

    'class = "actday"'

    ;

    62

    }

    annan

    {

    63

    $ klass

    =

    ;

    64

    }

    65

    66

    om

    (

    $ actday

    <=

    $ lastDay

    [

    'mday'

    ]){

    ;

    67

    eko

    $ actday

    68

    }

    69

    annan

    {

    '

    ;

    70

    eko

    '

    71

    }

    72

    }

    '

    ;

    73

    eko

    '

    74

    }

    75

    eko

    '

    '

    ;

    76

    }

    77

    showCalendar ();

    78

    ?>

    79

    80

  • Rekommenderad: