Listado completo de tutoriales

Temario del Tutorial42 - Administración de fechas y horas (función date)


La función date retorna un string con una fecha y hora, o partes de ella según un string de formato que le pasamos como parámetro. Se obtiene la fecha y hora del servidor.

Veamos como ejemplo la impresión de la fecha y hora actual del servidor:

pagina1.php

<html>

<head>
  <title>Problema</title>
</head>

<body>
  <?php
  echo "La fecha de hoy es:";
  $fecha = date("d/m/Y");
  echo $fecha;
  echo "<br>";
  echo "La hora actual es:";
  $hora = date("H:i:s");
  echo $hora;
  echo "<br>";
  ?>
  <a href="pagina2.php">Siguiente problema</a>
</body>

</html>

Los caracteres de formato utilizados en las dos llamadas de la función date son:

d día del mes con dos dígitos "01" al "31"
m mes con dos dígitos "01" al "12"
Y año con cuatro dígitos
Para la hora, los caracteres que serán sustituidos son:
H hora con dos dígitos "00" a "23"
i minutos con dos dígitos "00" a "59"
s segundos con dos dígitos "00" a "59"

Los otros caracteres que disponemos al llamar a la función date, son retornados sin cambios, en este caso la barra y los dos puntos.

Los caracteres de formato que veíamos son los más comunes, pero tenemos otras variantes posibles. Si queremos los días y meses sin el cero delante y el año con dos dígitos tenemos entonces:

<html>

<head>
    <title>Problema</title>
</head>

<body>
    <?php
    echo "La fecha de hoy es:";
    $fecha = date("j/n/y");
    echo $fecha;
    echo "<br>";
    ?>
    <a href="pagina3.php">Siguiente problema</a>
</body>

</html>

Los caracteres que ahora tenemos son:

j día del mes "1" al "31"
n mes "1" al "12"
y año con dos dígitos

Por último, a los otros caracteres de formato de la función date que nos pueden servir en alguna ocasión, los podemos ver en el siguiente ejemplo:

<html>

<head>
  <title>Problema</title>
</head>

<body>
  <?php
  $dato = date("L");
  if ($dato == 1)
    echo "Año bisiesto";
  else
    echo "Año no bisiesto";
  echo "<br>";
  echo "Día de la semana:";
  $dato = date("w");
  switch ($dato) {
    case 0:
      echo "domingo";
      break;
    case 1:
      echo "lunes";
      break;
    case 2:
      echo "martes";
      break;
    case 3:
      echo "miércoles";
      break;
    case 4:
      echo "jueves";
      break;
    case 5:
      echo "viernes";
      break;
    case 6:
      echo "sábado";
      break;
  }
  ?>
</body>

</html>

Los caracteres son:

L "1" o "0", según si el año es bisiesto o no
w día de la semana, en número, de "0" (domingo) a "6" (sábado)


Problema resuelto.

Copiar el contenido de este cuadro de texto al VS Code y almacenarlo en la carpeta c:\xampp\htdocs con un nombre con extensión php.
luego abrir el navegador (Chrome, FireFox, IExplorer etc.) y en la barra de direcciones tipear:
http://localhost/pagina1.php (o el nombre del archivo que le dió)

pagina1.php

Ejecutar ejemplo

pagina2.php


pagina3.php

Problema propuesto.

Confeccionar un programa que permita registrar una queja en un archivo de texto.Disponer un formulario que permita almacenar el nombre del visitante (objeto HTML de tipo "text"), la descripción de la queja (objeto de tipo "textarea").
Almacenar en el archivo de texto la fecha y hora de la queja.

El archivo "pagina1.php" debe ser el formulario de ingreso de datos.
El archivo "pagina2.php" debe registrar la información en el archivo de datos.
Por último el archivo "pagina3.php" debe imprimir el archivo con todas las quejas registradas hasta el momento. Disponer un hipervínculo en el archivo "pagina1.php" para poder ver todas las quejas registradas.

Solución
pagina1.php

Ejecutar ejemplo
pagina2.php

pagina3.php

Retornar