Cómo crear un calendario en PHP: 7 pasos (con imágenes)

Tabla de contenido:

Cómo crear un calendario en PHP: 7 pasos (con imágenes)
Cómo crear un calendario en PHP: 7 pasos (con imágenes)

Video: Cómo crear un calendario en PHP: 7 pasos (con imágenes)

Video: Cómo crear un calendario en PHP: 7 pasos (con imágenes)
Video: Cómo Implementar un Servidor SSH en CentOS 7 2021 2024, Marcha
Anonim

Este artículo le enseñará cómo hacer un calendario en PHP. Aquí se enumeran algunos scripts de calendario php gratuitos. O puede ingresar directamente al sitio PHPKode.com para obtener más tutoriales PHP gratuitos.

Pasos

Crear un calendario en PHP Paso 1
Crear un calendario en PHP Paso 1

Paso 1. Recopile la información necesaria que es importante para mostrar el mes real y resalte el día real

Además de esto, también desea mostrar el mes y el año reales. Para hacer esto, necesitará 3 entradas de día especiales: el día real, el primer día del mes real, el último día del mes real

Crear un calendario en PHP Paso 2
Crear un calendario en PHP Paso 2

Paso 2. Determine qué día fue el primer día, cuánto dura el mes y, por supuesto, cuál es el día real, con la información anterior

Paso 3. Utilice la función incorporada de PHP:

obtener la fecha()

. Sin parámetros, esta función devuelve la información del día real en una matriz de la siguiente manera:

01

Formación

02

(

03

[segundos] => 40

04

[minutos] => 58

05

[horas] => 21

06

[mday] => 17

07

[wday] => 2

08

[lun] => 6

09

[año] => 2003

10

[yday] => 167

11

[día de la semana] => martes

12

[mes] => junio

13

[0] => 1055901520

14

)

Para obtener el último día del mes con la fecha de obtención, debemos intentar obtener el día 0. del mes siguiente. Entonces, el código para obtener la información se ve así:

1

<? php

2

$ hoy

=

obtener la fecha

();

3

$ firstDay

=

obtener la fecha

(

mktime

(0, 0, 0,

$ hoy

[

'Lun'

], 1,

$ hoy

[

'año'

]));

4

$ lastDay

=

obtener la fecha

(

mktime

(0, 0, 0,

$ hoy

[

'Lun'

]+1, 0,

$ hoy

[

'año'

]));

5

?>

Paso 3.

Para mostrar un calendario necesitamos una tabla con 7 columnas para los días de la semana. El número de líneas según el número de días y el primer día del mes. Sin embargo, necesitamos una línea de encabezado con información sobre el mes y el año, una línea de subtítulo con el nombre de los días.

1

<? php

2

// Crea una tabla con la información de encabezado necesaria

3

eco

''

;

;

$ hoy

[

'mes'

].

" - "

$ hoy

[

'año'

].

4

eco

'

'

'

;

5

eco

'

'

;

6

eco

'

Mes Tu Nosotros Th

'

;

7

eco

'

P. Sa Su

8

?>

Crear un calendario en PHP Paso 3
Crear un calendario en PHP Paso 3
  • Ahora que tiene el encabezado de la tabla, complete la primera fila. No es tan fácil, ya que no puede escribir 1 en la primera celda, 2 en la segunda y así sucesivamente. Solo funciona si el primer día del mes fue lunes, pero ¿y si no? Para decidir esto, necesitamos el elemento de día de la matriz firstDay. Con esta información podemos llenar las celdas con un espacio si es necesario. El código para hacer esto es el siguiente:

    01

    <? php

    '

    ;

    02

    eco

    '

    03

    por

    (

    $ i

    =1;

    $ i

    <

    $ firstDay

    [

    'wday'

    ];

    $ i

    ++){

    '

    ;

    04

    eco

    '

    05

    }

    06

    $ actday

    = 0;

    07

    por

    (

    $ i

    =

    $ firstDay

    [

    'wday'

    ];

    $ i

    <=7;

    $ i

    ++){

    08

    $ actday

    ++;

    ;

    09

    eco

    $ actday

    10

    }

    '

    ;

    11

    eco

    '

    12

    ?>

    Crear un calendario en PHP Paso 4
    Crear un calendario en PHP Paso 4
  • Como siguiente paso, debemos completar las siguientes líneas. Es un poco más fácil, solo necesitamos saber cuántas semanas completas tenemos y completar algunas filas de la tabla de la siguiente manera:

    01

    <? php

    02

    $ fullWeeks

    =

    suelo

    ((

    $ lastDay

    [

    'mday'

    ]-

    $ actday

    )/7);

    03

    04

    por

    (

    $ i

    =0;

    $ i

    <

    $ fullWeeks

    ;

    $ i

    ++){

    '

    ;

    05

    eco

    '

    06

    por

    (

    $ j

    =0;

    $ j

    <7;

    $ j

    ++){

    07

    $ actday

    ++;

    ;

    08

    eco

    $ actday

    09

    }

    '

    ;

    10

    eco

    '

    11

    }

    12

    13

    ?>

    Crear un calendario en PHP Paso 5
    Crear un calendario en PHP Paso 5
  • Como paso semifinal, debemos agregar el resto del mes a la última línea. En este caso es bastante sencillo:

    01

    <? php

    02

    si

    (

    $ actday

    <

    $ lastDay

    [

    'mday'

    ]){

    '

    ;

    03

    eco

    '

    04

    por

    (

    $ i

    =0;

    $ i

    <7;

    $ i

    ++){

    05

    $ actday

    ++;

    06

    si

    (

    $ actday

    <=

    $ lastDay

    [

    'mday'

    ]){

    ;

    07

    eco

    $ actday

    08

    }

    09

    demás

    {

    '

    ;

    10

    eco

    '

    11

    }

    12

    }

    '

    ;

    13

    eco

    '

    14

    }

    15

    ?>

    Paso 7.

    Para hacer que el calendario sea un poco más agradable, presentaremos algunos diseños CSS. El archivo CSS es muy simple:

    01

    mesa {

    02

    ancho

    :

    210px

    ;

    03

    frontera

    :

    0px

    sólido

    #888

    ;

    04

    colapso de la frontera

    :

    colapso

    ;

    05

    }

    06

    td {

    07

    ancho

    :

    30px

    ;

    08

    border-collpase: collpase;

    09

    frontera

    :

    1 px

    sólido

    #888

    ;

    10

    texto alineado

    :

    Derecha

    ;

    11

    padding-right

    :

    5px

    ;

    12

    }

    13

    .dias{

    14

    color de fondo

    :

    # F1F3F5

    ;

    15

    }

    16

    th {

    17

    border-collpase: collpase;

    18

    frontera

    :

    1 px

    sólido

    #888

    ;

    19

    color de fondo

    :

    # E9ECEF

    ;

    20

    }

    21

    .actday {

    22

    color de fondo

    :

    # c22

    ;

    23

    peso de la fuente

    :

    negrita

    ;

    24

    }

    Crear un calendario en PHP Paso 6
    Crear un calendario en PHP Paso 6
  • El código completo que utiliza CSS es el siguiente:

    01

    <! DOCTYPE html PUBLIC

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

    "DTD / xhtml1-transitional.dtd"

    02

    03

    04

    #

    "estilo / estilo.css"

    rel =

    "hoja de estilo"

    tipo =

    "texto / css"

    05

    06

    07

    <? php

    08

    función

    showCalendar () {

    09

    // Obtenga información clave del día.

    10

    // Necesitamos el primer y último día del mes y el día real

    11

    $ hoy

    =

    obtener la fecha

    ();

    12

    $ firstDay

    =

    obtener la fecha

    (

    mktime

    (0, 0, 0,

    $ hoy

    [

    'Lun'

    ], 1,

    $ hoy

    [

    'año'

    ]));

    13

    $ lastDay

    =

    obtener la fecha

    (

    mktime

    (0, 0, 0,

    $ hoy

    [

    'Lun'

    ]+1, 0,

    $ hoy

    [

    'año'

    ]));

    14

    15

    // Crea una tabla con la información de encabezado necesaria

    16

    eco

    ''

    ;

    ;

    $ hoy

    [

    'mes'

    ].

    " - "

    $ hoy

    [

    'año'

    ].

    17

    eco

    '

    '

    '

    ;

    18

    eco

    '

    '

    ;

    19

    eco

    '

    Mes Tu Nosotros Th

    '

    ;

    20

    eco

    '

    P. Sa Su

    21

    22

    // Mostrar la primera fila del calendario con la posición correcta

    '

    ;

    23

    eco

    '

    24

    por

    (

    $ i

    =1;

    $ i

    <

    $ firstDay

    [

    'wday'

    ];

    $ i

    ++){

    '

    ;

    25

    eco

    '

    26

    }

    27

    $ actday

    = 0;

    28

    por

    (

    $ i

    =

    $ firstDay

    [

    'wday'

    ];

    $ i

    <=7;

    $ i

    ++){

    29

    $ actday

    ++;

    30

    si

    (

    $ actday

    ==

    $ hoy

    [

    'mday'

    ]) {

    31

    $ clase

    =

    'class = "actday"'

    ;

    32

    }

    demás

    {

    33

    $ clase

    =

    ;

    34

    }

    ;

    35

    eco

    $ actday

    36

    }

    '

    ;

    37

    eco

    '

    38

    39

    // Obtenga cuántas semanas completas hay en el mes real

    40

    $ fullWeeks

    =

    suelo

    ((

    $ lastDay

    [

    'mday'

    ]-

    $ actday

    )/7);

    41

    por

    (

    $ i

    =0;

    $ i

    <

    $ fullWeeks

    ;

    $ i

    ++){

    '

    ;

    42

    eco

    '

    43

    por

    (

    $ j

    =0;

    $ j

    <7;

    $ j

    ++){

    44

    $ actday

    ++;

    45

    si

    (

    $ actday

    ==

    $ hoy

    [

    'mday'

    ]) {

    46

    $ clase

    =

    'class = "actday"'

    ;

    47

    }

    demás

    {

    48

    $ clase

    =

    ;

    49

    }

    ;

    50

    eco

    $ actday

    51

    }

    '

    ;

    52

    eco

    '

    53

    }

    54

    55

    // Ahora muestra el resto del mes

    56

    si

    (

    $ actday

    <

    $ lastDay

    [

    'mday'

    ]){

    '

    ;

    57

    eco

    '

    58

    por

    (

    $ i

    =0;

    $ i

    <7;

    $ i

    ++){

    59

    $ actday

    ++;

    60

    si

    (

    $ actday

    ==

    $ hoy

    [

    'mday'

    ]) {

    61

    $ clase

    =

    'class = "actday"'

    ;

    62

    }

    demás

    {

    63

    $ clase

    =

    ;

    64

    }

    65

    66

    si

    (

    $ actday

    <=

    $ lastDay

    [

    'mday'

    ]){

    ;

    67

    eco

    $ actday

    68

    }

    69

    demás

    {

    '

    ;

    70

    eco

    '

    71

    }

    72

    }

    '

    ;

    73

    eco

    '

    74

    }

    75

    eco

    '

    '

    ;

    76

    }

    77

    showCalendar ();

    78

    ?>

    79

    80

  • Recomendado: