Kako ustvariti koledar v PHP: 7 korakov (s slikami)

Kazalo:

Kako ustvariti koledar v PHP: 7 korakov (s slikami)
Kako ustvariti koledar v PHP: 7 korakov (s slikami)

Video: Kako ustvariti koledar v PHP: 7 korakov (s slikami)

Video: Kako ustvariti koledar v PHP: 7 korakov (s slikami)
Video: Kako narediti spletno stran brezplačno 2020 | Wordpress 2024, April
Anonim

Ta članek vas bo naučil, kako narediti koledar v PHP. Tu je nekaj brezplačnih skriptov koledarja php. Ali pa se obrnite neposredno na spletno mesto PHPKode.com za več brezplačnih PHP vaj.

Koraki

Ustvarite koledar v PHP 1. korak
Ustvarite koledar v PHP 1. korak

Korak 1. Zberite potrebne podatke, ki so pomembni za prikaz dejanskega meseca, in označite dejanski dan

Poleg tega želite prikazati tudi dejanski mesec in leto. Če želite to narediti, potrebujete 3 posebne dnevne vnose: dejanski dan, prvi dan dejanskega meseca, zadnji dan dejanskega meseca

Ustvarite koledar v PHP 2. korak
Ustvarite koledar v PHP 2. korak

Korak 2. Določite, kateri dan je bil prvi dan, kako dolg je mesec in seveda, kateri je dejanski dan, z zgornjimi podatki

Korak 3. Uporabite vgrajeno funkcijo PHP:

getdate ()

. Brez parametrov ta funkcija vrne podatke o dejanskem dnevu v matriki na naslednji način:

01

Niz

02

(

03

[sekunde] => 40

04

[minute] => 58

05

[ure] => 21

06

[mday] => 17

07

[wday] => 2

08

[pon] => 6

09

[leto] => 2003

10

[yday] => 167

11

[delovni dan] => torek

12

[mesec] => junij

13

[0] => 1055901520

14

)

Da bi dobili zadnji dan v mesecu z datumom prejema, moramo poskusiti dobiti 0. dan naslednjega meseca. Koda za pridobivanje informacij izgleda tako:

1

<? php

2

$ danes

=

getdate

();

3

$ firstDay

=

getdate

(

mktime

(0, 0, 0,

$ danes

[

'pon'

], 1,

$ danes

[

'leto'

]));

4

$ lastDay

=

getdate

(

mktime

(0, 0, 0,

$ danes

[

'pon'

]+1, 0,

$ danes

[

'leto'

]));

5

?>

3. korak.

Za prikaz koledarja potrebujemo tabelo s 7 stolpci za dneve v tednu. Število vrstic, odvisno od števila dni in prvega dne v mesecu. Potrebujemo pa vrstico glave z informacijami o mesecu in letu, vrstico podnaslova z imenom dni.

1

<? php

2

// Ustvarite tabelo s potrebnimi informacijami o glavi

3

odmev

''

;

;

$ danes

[

'mesec'

].

" - "

$ danes

[

'leto'

].

4

odmev

'

'

'

;

5

odmev

'

'

;

6

odmev

'

Mo Tu Mi Th

'

;

7

odmev

'

Fr Sa Ned

8

?>

Ustvarite koledar v PHP 3. korak
Ustvarite koledar v PHP 3. korak
  • Zdaj, ko imate glavo tabele, izpolnite prvo vrstico. To ni tako enostavno, saj ne morete napisati samo 1 v prvo celico, 2 v drugo in tako naprej. Deluje le, če je bil prvi dan v mesecu ponedeljek, kaj pa če ne? Za odločitev o tem potrebujemo element dneva iz matrike firstDay. S temi informacijami lahko celice po potrebi zapolnimo s presledkom. Koda za to je naslednja:

    01

    <? php

    '

    ;

    02

    odmev

    '

    03

    za

    (

    $ i

    =1;

    $ i

    <

    $ firstDay

    [

    'wday'

    ];

    $ i

    ++){

    '

    ;

    04

    odmev

    '

    05

    }

    06

    $ actday

    = 0;

    07

    za

    (

    $ i

    =

    $ firstDay

    [

    'wday'

    ];

    $ i

    <=7;

    $ i

    ++){

    08

    $ actday

    ++;

    ;

    09

    odmev

    $ actday

    10

    }

    '

    ;

    11

    odmev

    '

    12

    ?>

    Ustvarite koledar v PHP 4. korak
    Ustvarite koledar v PHP 4. korak
  • Kot naslednji korak moramo izpolniti naslednje vrstice. To je nekoliko lažje, le vedeti moramo, koliko tednov imamo, in izpolniti nekaj vrstic tabele na naslednji način:

    01

    <? php

    02

    $ polni tedni

    =

    nadstropje

    ((

    $ lastDay

    [

    'mday'

    ]-

    $ actday

    )/7);

    03

    04

    za

    (

    $ i

    =0;

    $ i

    <

    $ polni tedni

    ;

    $ i

    ++){

    '

    ;

    05

    odmev

    '

    06

    za

    (

    $ j

    =0;

    $ j

    <7;

    $ j

    ++){

    07

    $ actday

    ++;

    ;

    08

    odmev

    $ actday

    09

    }

    '

    ;

    10

    odmev

    '

    11

    }

    12

    13

    ?>

    Ustvarite koledar v PHP 5. korak
    Ustvarite koledar v PHP 5. korak
  • Kot polfinalni korak moramo preostanek meseca dodati zadnji vrstici. V tem primeru je precej enostavno:

    01

    <? php

    02

    če

    (

    $ actday

    <

    $ lastDay

    [

    'mday'

    ]){

    '

    ;

    03

    odmev

    '

    04

    za

    (

    $ i

    =0;

    $ i

    <7;

    $ i

    ++){

    05

    $ actday

    ++;

    06

    če

    (

    $ actday

    <=

    $ lastDay

    [

    'mday'

    ]){

    ;

    07

    odmev

    $ actday

    08

    }

    09

    drugače

    {

    '

    ;

    10

    odmev

    '

    11

    }

    12

    }

    '

    ;

    13

    odmev

    '

    14

    }

    15

    ?>

    7. korak.

    Da bi bil koledar lepši, bomo predstavili nekaj oblikovanja CSS. Datoteka CSS je zelo preprosta:

    01

    miza {

    02

    premer

    :

    210 slikovnih pik

    ;

    03

    mejo

    :

    0 slikovnih pik

    trden

    #888

    ;

    04

    razpad meje

    :

    propad

    ;

    05

    }

    06

    td {

    07

    premer

    :

    30 slikovnih pik

    ;

    08

    border-collpase: collpase;

    09

    mejo

    :

    1 slikovnih pik

    trden

    #888

    ;

    10

    poravnajte besedilo

    :

    prav

    ;

    11

    oblazinjenje-desno

    :

    5 slikovnih pik

    ;

    12

    }

    13

    .dnevi{

    14

    Barva ozadja

    :

    #F1F3F5

    ;

    15

    }

    16

    th {

    17

    border-collpase: collpase;

    18

    meja

    :

    1 slikovnih pik

    trden

    #888

    ;

    19

    Barva ozadja

    :

    #E9ECEF

    ;

    20

    }

    21

    .actday {

    22

    Barva ozadja

    :

    #c22

    ;

    23

    teža pisave

    :

    krepko

    ;

    24

    }

    Ustvarite koledar v PHP 6. korak
    Ustvarite koledar v PHP 6. korak
  • Celotna koda, ki uporablja CSS, je naslednja:

    01

    <! DOCTYPE html JAVNO

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

    "DTD/xhtml1-transitional.dtd"

    02

    03

    04

    #

    "style/style.css"

    rel =

    "slog"

    tip =

    "besedilo/css"

    05

    06

    07

    <? php

    08

    funkcijo

    showCalendar () {

    09

    // Pridobite ključne dnevne informacije.

    10

    // Potrebujemo prvi in zadnji dan v mesecu ter dejanski dan

    11

    $ danes

    =

    getdate

    ();

    12

    $ firstDay

    =

    getdate

    (

    mktime

    (0, 0, 0,

    $ danes

    [

    'pon'

    ], 1,

    $ danes

    [

    'leto'

    ]));

    13

    $ lastDay

    =

    getdate

    (

    mktime

    (0, 0, 0,

    $ danes

    [

    'pon'

    ]+1, 0,

    $ danes

    [

    'leto'

    ]));

    14

    15

    // Ustvarite tabelo s potrebnimi informacijami o glavi

    16

    odmev

    ''

    ;

    ;

    $ danes

    [

    'mesec'

    ].

    " - "

    $ danes

    [

    'leto'

    ].

    17

    odmev

    '

    '

    '

    ;

    18

    odmev

    '

    '

    ;

    19

    odmev

    '

    Mo Tu Mi Th

    '

    ;

    20

    odmev

    '

    Fr Sa Ned

    21

    22

    // Prikaz prve vrstice koledarja s pravilnim pozicioniranjem

    '

    ;

    23

    odmev

    '

    24

    za

    (

    $ i

    =1;

    $ i

    <

    $ firstDay

    [

    'wday'

    ];

    $ i

    ++){

    '

    ;

    25

    odmev

    '

    26

    }

    27

    $ actday

    = 0;

    28

    za

    (

    $ i

    =

    $ firstDay

    [

    'wday'

    ];

    $ i

    <=7;

    $ i

    ++){

    29

    $ actday

    ++;

    30

    če

    (

    $ actday

    ==

    $ danes

    [

    'mday'

    ]) {

    31

    $ class

    =

    'class = "actday"'

    ;

    32

    }

    drugače

    {

    33

    $ class

    =

    ;

    34

    }

    ;

    35

    odmev

    $ actday

    36

    }

    '

    ;

    37

    odmev

    '

    38

    39

    // Ugotovite, koliko tednov je v dejanskem mesecu

    40

    $ polni tedni

    =

    nadstropje

    ((

    $ lastDay

    [

    'mday'

    ]-

    $ actday

    )/7);

    41

    za

    (

    $ i

    =0;

    $ i

    <

    $ polni tedni

    ;

    $ i

    ++){

    '

    ;

    42

    odmev

    '

    43

    za

    (

    $ j

    =0;

    $ j

    <7;

    $ j

    ++){

    44

    $ actday

    ++;

    45

    če

    (

    $ actday

    ==

    $ danes

    [

    'mday'

    ]) {

    46

    $ class

    =

    'class = "actday"'

    ;

    47

    }

    drugače

    {

    48

    $ class

    =

    ;

    49

    }

    ;

    50

    odmev

    $ actday

    51

    }

    '

    ;

    52

    odmev

    '

    53

    }

    54

    55

    // Zdaj prikaže preostanek meseca

    56

    če

    (

    $ actday

    <

    $ lastDay

    [

    'mday'

    ]){

    '

    ;

    57

    odmev

    '

    58

    za

    (

    $ i

    =0;

    $ i

    <7;

    $ i

    ++){

    59

    $ actday

    ++;

    60

    če

    (

    $ actday

    ==

    $ danes

    [

    'mday'

    ]) {

    61

    $ class

    =

    'class = "actday"'

    ;

    62

    }

    drugače

    {

    63

    $ class

    =

    ;

    64

    }

    65

    66

    če

    (

    $ actday

    <=

    $ lastDay

    [

    'mday'

    ]){

    ;

    67

    odmev

    $ actday

    68

    }

    69

    drugače

    {

    '

    ;

    70

    odmev

    '

    71

    }

    72

    }

    '

    ;

    73

    odmev

    '

    74

    }

    75

    odmev

    '

    '

    ;

    76

    }

    77

    showCalendar ();

    78

    ?>

    79

    80

  • Priporočena: