Cara Membuat Kalendar dalam PHP: 7 Langkah (dengan Gambar)

Isi kandungan:

Cara Membuat Kalendar dalam PHP: 7 Langkah (dengan Gambar)
Cara Membuat Kalendar dalam PHP: 7 Langkah (dengan Gambar)

Video: Cara Membuat Kalendar dalam PHP: 7 Langkah (dengan Gambar)

Video: Cara Membuat Kalendar dalam PHP: 7 Langkah (dengan Gambar)
Video: #3 Konfigurasi IP Address & SSH pada CentOS 7 Server 2024, April
Anonim

Artikel ini akan mengajar anda cara membuat kalendar dalam PHP. Di sini senaraikan beberapa skrip kalendar php percuma. Atau anda boleh terus masuk ke laman PHPKode.com untuk Tutorial PHP yang lebih percuma.

Langkah-langkah

Buat Kalendar di PHP Langkah 1
Buat Kalendar di PHP Langkah 1

Langkah 1. Kumpulkan maklumat yang diperlukan yang penting untuk menunjukkan bulan sebenar, dan sorot hari sebenar

Selain itu, anda juga mahu memaparkan bulan dan tahun sebenarnya. Untuk melakukan ini, anda memerlukan 3 input hari khas: hari sebenar, hari pertama bulan sebenar, hari terakhir bulan sebenar

Buat Kalendar di PHP Langkah 2
Buat Kalendar di PHP Langkah 2

Langkah 2. Tentukan hari apa hari pertama, berapa lama bulan itu, dan, tentu saja, hari sebenarnya dengan maklumat di atas

Langkah 3. Gunakan fungsi terbina dalam PHP:

tarikh ()

. Tanpa parameter, fungsi ini mengembalikan maklumat hari sebenar dalam susunan seperti berikut:

01

Array

02

(

03

[saat] => 40

04

[minit] => 58

05

[jam] => 21

06

[mday] => 17

07

[wday] => 2

08

[mon] => 6

09

[tahun] => 2003

10

[yday] => 167

11

[hari minggu] => Selasa

12

[bulan] => Jun

13

[0] => 1055901520

14

)

Untuk mendapatkan hari terakhir bulan dengan tarikh dapatkan kita perlu berusaha mendapatkan 0. hari bulan berikutnya. Jadi kod untuk mendapatkan maklumat kelihatan seperti ini:

1

<? php

2

$ hari ini

=

bertarikh

();

3

$ pertamaHari

=

bertarikh

(

mktime

(0, 0, 0,

$ hari ini

[

'mon'

], 1,

$ hari ini

[

'tahun'

]));

4

$ lastDay

=

bertarikh

(

mktime

(0, 0, 0,

$ hari ini

[

'mon'

]+1, 0,

$ hari ini

[

'tahun'

]));

5

?>

Langkah 3.

Untuk memaparkan kalendar, kita memerlukan jadual dengan 7 lajur untuk hari-hari dalam seminggu. Bilangan garis bergantung pada bilangan hari dan hari pertama dalam sebulan. Walau bagaimanapun, kita memerlukan baris tajuk dengan maklumat bulan dan tahun, baris subheader dengan nama hari-hari.

1

<? php

2

// Buat jadual dengan maklumat tajuk yang diperlukan

3

gema

''

;

;

$ hari ini

[

'bulan'

].

" - "

$ hari ini

[

'tahun'

].

4

gema

'

'

'

;

5

gema

'

'

;

6

gema

'

Mo Tu Kami Th

'

;

7

gema

'

Saudara Fr Sa Su

8

?>

Buat Kalendar di PHP Langkah 3
Buat Kalendar di PHP Langkah 3
  • Sekarang anda mempunyai tajuk jadual, isikan baris pertama. Ia tidak begitu mudah kerana anda tidak boleh menulis 1 di sel pertama, 2 di sel kedua dan seterusnya. Ia hanya berfungsi jika hari pertama bulan itu adalah hari Isnin, tetapi bagaimana jika tidak? Untuk memutuskan ini, kita memerlukan item hari dari array FirstDay. Dengan maklumat ini kita dapat mengisi ruang dengan ruang jika diperlukan. Kod untuk melakukan ini adalah seperti berikut:

    01

    <? php

    '

    ;

    02

    gema

    '

    03

    untuk

    (

    $ i

    =1;

    $ i

    <

    $ pertamaHari

    [

    'hari'

    ];

    $ i

    ++){

    '

    ;

    04

    gema

    '

    05

    }

    06

    $ bertindak

    = 0;

    07

    untuk

    (

    $ i

    =

    $ pertamaHari

    [

    'hari'

    ];

    $ i

    <=7;

    $ i

    ++){

    08

    $ bertindak

    ++;

    ;

    09

    gema

    $ bertindak

    10

    }

    '

    ;

    11

    gema

    '

    12

    ?>

    Buat Kalendar di PHP Langkah 4
    Buat Kalendar di PHP Langkah 4
  • Sebagai langkah seterusnya, kita perlu mengisi baris berikut. Agak mudah, kita hanya perlu mengetahui berapa minggu penuh yang kita ada dan mengisi beberapa baris jadual seperti berikut:

    01

    <? php

    02

    $ penuhMinggu

    =

    lantai

    ((

    $ lastDay

    [

    'pagi'

    ]-

    $ bertindak

    )/7);

    03

    04

    untuk

    (

    $ i

    =0;

    $ i

    <

    $ penuhMinggu

    ;

    $ i

    ++){

    '

    ;

    05

    gema

    '

    06

    untuk

    (

    $ j

    =0;

    $ j

    <7;

    $ j

    ++){

    07

    $ bertindak

    ++;

    ;

    08

    gema

    $ bertindak

    09

    }

    '

    ;

    10

    gema

    '

    11

    }

    12

    13

    ?>

    Buat Kalendar di PHP Langkah 5
    Buat Kalendar di PHP Langkah 5
  • Sebagai langkah separuh akhir kita perlu menambahkan baki bulan ke baris terakhir. Dalam kes ini agak mudah:

    01

    <? php

    02

    sekiranya

    (

    $ bertindak

    <

    $ lastDay

    [

    'pagi'

    ]){

    '

    ;

    03

    gema

    '

    04

    untuk

    (

    $ i

    =0;

    $ i

    <7;

    $ i

    ++){

    05

    $ bertindak

    ++;

    06

    sekiranya

    (

    $ bertindak

    <=

    $ lastDay

    [

    'pagi'

    ]){

    ;

    07

    gema

    $ bertindak

    08

    }

    09

    yang lain

    {

    '

    ;

    10

    gema

    '

    11

    }

    12

    }

    '

    ;

    13

    gema

    '

    14

    }

    15

    ?>

    Langkah 7.

    Untuk menjadikan kalendar sedikit lebih baik, kami akan memperkenalkan beberapa reka bentuk CSS. Fail CSS sangat mudah:

    01

    jadual {

    02

    lebar

    :

    210 piksel

    ;

    03

    sempadan

    :

    0px

    padat

    #888

    ;

    04

    runtuh sempadan

    :

    runtuh

    ;

    05

    }

    06

    td {

    07

    lebar

    :

    30 piksel

    ;

    08

    border-collpase: collpase;

    09

    sempadan

    :

    1px

    padat

    #888

    ;

    10

    selaras teks

    :

    betul

    ;

    11

    padding-kanan

    :

    5px

    ;

    12

    }

    13

    . hari {

    14

    warna latar belakang

    :

    # F1F3F5

    ;

    15

    }

    16

    th {

    17

    border-collpase: collpase;

    18

    sempadan

    :

    1px

    padat

    #888

    ;

    19

    warna latar belakang

    :

    # E9ECEF

    ;

    20

    }

    21

    . hari ahad {

    22

    warna latar belakang

    :

    # c22

    ;

    23

    berat fon

    :

    berani

    ;

    24

    }

    Buat Kalendar di PHP Langkah 6
    Buat Kalendar di PHP Langkah 6
  • Kod lengkap yang menggunakan CSS adalah seperti berikut:

    01

    <! DOCTYPE html AWAM

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

    "DTD / xhtml1-transitional.dtd"

    02

    03

    04

    #

    "gaya / gaya.css"

    rel =

    "helaian gaya"

    taip =

    "teks / css"

    05

    06

    07

    <? php

    08

    fungsi

    acaraCalendar () {

    09

    // Dapatkan maklumat penting.

    10

    // Kita memerlukan hari pertama dan terakhir bulan dan hari sebenar

    11

    $ hari ini

    =

    bertarikh

    ();

    12

    $ pertamaHari

    =

    bertarikh

    (

    mktime

    (0, 0, 0,

    $ hari ini

    [

    'mon'

    ], 1,

    $ hari ini

    [

    'tahun'

    ]));

    13

    $ lastDay

    =

    bertarikh

    (

    mktime

    (0, 0, 0,

    $ hari ini

    [

    'mon'

    ]+1, 0,

    $ hari ini

    [

    'tahun'

    ]));

    14

    15

    // Buat jadual dengan maklumat tajuk yang diperlukan

    16

    gema

    ''

    ;

    ;

    $ hari ini

    [

    'bulan'

    ].

    " - "

    $ hari ini

    [

    'tahun'

    ].

    17

    gema

    '

    '

    '

    ;

    18

    gema

    '

    '

    ;

    19

    gema

    '

    Mo Tu Kami Th

    '

    ;

    20

    gema

    '

    Saudara Fr Sa Su

    21

    22

    // Paparkan baris kalendar pertama dengan kedudukan yang betul

    '

    ;

    23

    gema

    '

    24

    untuk

    (

    $ i

    =1;

    $ i

    <

    $ pertamaHari

    [

    'hari'

    ];

    $ i

    ++){

    '

    ;

    25

    gema

    '

    26

    }

    27

    $ bertindak

    = 0;

    28

    untuk

    (

    $ i

    =

    $ pertamaHari

    [

    'hari'

    ];

    $ i

    <=7;

    $ i

    ++){

    29

    $ bertindak

    ++;

    30

    sekiranya

    (

    $ bertindak

    ==

    $ hari ini

    [

    'pagi'

    ]) {

    31

    kelas $

    =

    'class = "actday"'

    ;

    32

    }

    yang lain

    {

    33

    kelas $

    =

    ;

    34

    }

    ;

    35

    gema

    $ bertindak

    36

    }

    '

    ;

    37

    gema

    '

    38

    39

    // Dapatkan berapa minggu lengkap dalam bulan sebenar

    40

    $ penuhMinggu

    =

    lantai

    ((

    $ lastDay

    [

    'pagi'

    ]-

    $ bertindak

    )/7);

    41

    untuk

    (

    $ i

    =0;

    $ i

    <

    $ penuhMinggu

    ;

    $ i

    ++){

    '

    ;

    42

    gema

    '

    43

    untuk

    (

    $ j

    =0;

    $ j

    <7;

    $ j

    ++){

    44

    $ bertindak

    ++;

    45

    sekiranya

    (

    $ bertindak

    ==

    $ hari ini

    [

    'pagi'

    ]) {

    46

    kelas $

    =

    'class = "actday"'

    ;

    47

    }

    yang lain

    {

    48

    kelas $

    =

    ;

    49

    }

    ;

    50

    gema

    $ bertindak

    51

    }

    '

    ;

    52

    gema

    '

    53

    }

    54

    55

    // Sekarang paparkan baki bulan

    56

    sekiranya

    (

    $ bertindak

    <

    $ lastDay

    [

    'pagi'

    ]){

    '

    ;

    57

    gema

    '

    58

    untuk

    (

    $ i

    =0;

    $ i

    <7;

    $ i

    ++){

    59

    $ bertindak

    ++;

    60

    sekiranya

    (

    $ bertindak

    ==

    $ hari ini

    [

    'pagi'

    ]) {

    61

    kelas $

    =

    'class = "actday"'

    ;

    62

    }

    yang lain

    {

    63

    kelas $

    =

    ;

    64

    }

    65

    66

    sekiranya

    (

    $ bertindak

    <=

    $ lastDay

    [

    'hari'

    ]){

    ;

    67

    gema

    $ hari kerja

    68

    }

    69

    yang lain

    {

    '

    ;

    70

    gema

    '

    71

    }

    72

    }

    '

    ;

    73

    gema

    '

    74

    }

    75

    gema

    '

    '

    ;

    76

    }

    77

    showCalendar ();

    78

    ?>

    79

    80

  • Disyorkan: