Repaso a la función de PHP strftime() para el formateo local de fechas y horas. La información local se puede establacer en el script con la función setlocale().
Otras funciones para trabajar con fechas son:
Sintaxis de PHP strftime()
Vamos a ver la sintaxis de esta función extraída de su web oficial:
1 |
strftime(formato, timestamp); |
Os explico los parámetros:
- formato (Obligaorio): Especifica el formato de dato devuelto.
- timestamp (Opcional): Especifica la fecha/hora con formato Unix a formatear. Por defecto si se omite es la hora local actual con formato Unix.
Tipos de formato
Listado de los diferentes formatos que se pueden aplicar en esta función de fecha:
DÍA
- %a: Representación abreviada el día. De ‘dom’ a ‘sáb’.
- %A: Respresentación completa del día. De ‘domingo’ a ‘sábado’.
- %d: Día del mes incluyendo ceros iniciales. De ’01’ a ’31’.
- %e: Día del mes sin ceros iniciales. De ‘1’ a ’31’.
- %j: Día del año con ceros iniciales. De ‘001’ a ‘366’.
- %u: Día de la semana ISO-8601. De ‘1’ a ‘7’.
- %w: Día de la semana. De ‘0’ a ‘6’.
SEMANA
- %U: Número de la semana, comenzando la primera semana en el primer domingo.
- %V: Número de la semana ISO-8601, la primera semana debe contener al menos 4 días y el lunes como primer día. De ’01’ a ’53’.
- %W: Representación numérica de la semana del año, comenzando con el primer domingo como la primera semana.
MES
- %b: Nombre del mes abreviado. De ‘ene’ a ‘dic’.
- %B: Nombre del mes completo. De ‘enero’ a diciembre’.
- %h: Igual que %b.
- %m: Representación numérica del mes con ceros iniciales. De ’01’ a ’12’.
AÑO
- %C: Representación del número de siglo. Año dividido entre 100 cogiendo la parte entera.
- %G: Representación numérica del año en 4 dígitos formato ISO-8601. Por ejemplo ‘2015’
- %g: Representación numérica del año en 2 dígitos formato ISO-8601. Por ejemplo ’15’ para ‘2015’.
- %Y: Representación numérica del año en 4 dígitos. Por ejemplo ‘2015’.
- %y: Representación numérica del año en 2 dígitos. Por ejemplo ’15’ para 2015.
HORA
- %H: Representación numérica de la hora en 2 dígitos con formato 24h. De ’00’ a ’23’.
- %I: Representación numérica de la hora en 2 dígitos con formato 12h. De ’01’ a ’12’.
- %M: Representación numérica de los minutos en 2 dígitos. De ’00’ to ’59’.
- %P: Representación de ‘AM’ o ‘PM’ dependiendo la hora dada. Por ejemplo ‘AM’ para las 00:51.
- %p: Representación de ‘am’ o ‘pm’ dependiendo la hora dada. Por ejemplo ‘am’ para las 00:51.
- %S: Representación numérica de los segundos en 2 dígitos. De ’00’ to ’59’.
Ejemplos de PHP strftime() para obtener la fecha y hora en tu idioma local
He preparado este ejemplo de PHP strftime() para ver un par de ejemplos prácticos:
1 2 3 4 5 |
//Establecer la información local en castellano de España setlocale(LC_TIME,"es_ES"); echo strftime("Hoy es %A y son las %H:%M"); echo strftime("El año es %Y y el mes es %B"); |
Explico el código:
- Establecemos la información local con setlocale(). Establecemos la información española.
- En la siguiente línea mostramos la info correspondiente al día, hora y minutos.
- En la última línea mostramos el año y mes.