PHP Formatear fechas

Con las funciones que hemos visto en la entrada anterior podemos mostrar una fecha en el formato que mejor nos parezca, no obstante existen funciones que nos harán esta tarea más sencilla. Vamos a verlas una a una.
Ahora vamos a ver algunas funciones para PHP que se usan para formatear fechas, es decir, para mostrarlas de un forma personalizada.

PHP.- Función date()

Nos retorna la fecha en una cadena de caracteres dispuesta para ser mostrada. Recibe distintos parámetros que se muestran en la siguiente figura

Parámetros de date() en PHP

Parámetros de date() en PHP

PHP ejemplo de manipulación de fechas

Atendiendo a lo anterior podríamos hacer ejemplos como los siguientes:

<?php
//Este array lo usaremos para mostrar los días en Castellano
$dias=array("Lunes","Martes","Miercoles","Jueves","Viernes","Sabado","Domingo");
//Forma básica
echo "<p>".date("d-m-y")."</p>";
//Forma básica con año completo numérica
echo "<p>".date("d-m-Y")."</p>";
//Forma completa numérica
echo "<p>".date("d-m-Y-H:i:s a")."</p>";
//Formatos completos
echo "<p>".date("c")."</p>";
echo "<p>".date("r")."</p>";
//Vamos a mostrar la fecha en Castellano
$dia=$dias[(date("N")-1)];
$dia_numero=date("d");
$mes=date("m");
$anio=date("Y");
$hora=date("H:i:s a");
echo "<p>Hoy es $dia $dia_numero del mes $mes del $anio y son las $hora";
?>

PHP Función gmdate()

Esta función es exactamente igual que la anterior pero devuelve la hora de Greenwitch.

Ejercicios

  1. Prueba los ejemplos anteriores
  2. Si te has fijado los meses no se muestran en Español, soluciona esto.
  3. Pruebalo para gmdate
    1. Uso de fechas en el idioma del servidor

      Existe una función que facilita las operaciones para servidores windows. Esta función se llama strftime() y su funcionamiento es análogo al anterior pero los atributos se indican con respecto a esta tabla:

      PHP atributos para strftime()

      atributos para strftime()


      Para que funciones primero deberemos usar la función setlocale() de esta forma:

      Fechas en español con PHP

      <?php
      setlocale(LC_ALL, "SP");
      echo "<p>".strftime("Hoy es %A, %d de %B de %Y")."</p>";
      ?>
      

      Observar como al hacer uso de los % es mucho más fácil insertar la fecha en una cadena.
      Al igual que para date que teniamos la función gmdate, ahora disponemos de la función gmstrftime() que nos devuelve la fecha GMT.

      Obtener solamente un campo de la fecha con la función idate()

      Con la función idate(), podremos obtener solamente un campo concreto:

      • hora internet B
      • día del mes d
      • hora h o H
      • minutos i
      • bisiesto L
      • mes m
      • segundos s
      • números de días del mes actual t
      • hora UNIX U
      • día de la semana w
      • año dos dígitos y
      • año con cuatro dígitos Y
      • Días transcurridos de todo el año z
      <?php
      echo "<p>Hora en internet: ".idate("B")."</p>";
      echo "<p>Dia del mes: ".idate("d")."</p>";
      echo "<p>Hora en formato 0-12: ".idate("h")."</p>";
      echo "<p>Hora en formato 0-23: ".idate("H")."</p>";
      echo "<p>Minutos: ".idate("i")."</p>";
      echo "<p>Es bisiesto: ".idate("L")."</p>"
      ?>
      

      Ejercicios

      1. Prueba los parámetros que faltan

      Originally posted 2011-03-06 17:24:27.

Deja un comentario