La función date() de php
Fecha y hora en php

19 de septiembre de 2010

Con la función date() de php podemos recuperar la fecha y hora del servidor.

La función date es:

date($parametros);

donde $parametros nos permite definir que dato queremos recuperar.

Algunos parámetros son:

date(j) Obtiene el día del mes
Ejemplo: 1,2,3,..., 31
date(l) Obtiene el nombre del día en INGLES
Ejemplo: Sunday, Monday,..., Saturday
date(w) Obtiene el número del día de la semana
Ejemplo: 0, 1,..., 6. El número 0 es igual a Domingo
date(F) Obtiene el nombre del mes en INGLES
Ejemplo: January, February,..., December
date(n) Obtiene el número del mes
Ejemplo: 1,2,3,....., 12
date(m) Obtiene el número del mes con un cero inicial
Ejemplo: 01,02,03,...,12
date(Y) Obtiene el año con cuatro dígitos
Ejemplo: 2010, 2011, 2012, 2013
date(y) Obtiene el año con dos dígitos
Ejemplo: 10, 11, 12, 13
date(G) Obtiene la hora en formato de 12 horas
Ejemplo: 1, 2, .... 11, 12
date(g) Obtiene la hora en formato de 12 horas con un cero inicial
Ejemplo: 01, 02, .... 11, 12
date(H) Obtiene la hora en formato de 24 horas
Ejemplo: 0, 2, .... 22,23
date(h) Obtiene la hora en formato de 24 horas con un cero inicial
Ejemplo: 00, 01, .... 23, 24
date(i) Obtiene los minutos
Ejemplo: 00,01,02,...., 59
date(s) Obtiene los segundos
Ejemplo: 00,01,02,...., 59
date(a) Obtiene el meridiano en minúsculas
Ejemplo: am / pm
date(A) Obtiene el meridiano en mayúsculas
Ejemplo: AM / PM

Al usar los parámetros es importante respetar el uso de mayúsculas y minúsculas pues no es lo mismo date(y) que date(Y).

Para escribir la fecha en el formato 13/3/2010 (día/mes/año) podríamos usar este código:

<?
$dia = date(j);

$mes = date(n);

$anho= date(Y);

echo $dia . '/' . $mes . '/' . $anho;

// en php el operador "." permite concatenar variables con cadenas de caracteres
?>

Para escribir la hora en el formato 2:15 PM (hora:minuto meridiano) podríamos usar este código.

<?
$hora = date(G);

$minuto = date(i);

$meridiano= date(A);

echo $hora . ':' . $minuto . ' ' . $meridiano;

?>

Un problema a resolver con date() es como representar el nombre de los meses en español... (o en cualquier otro idioma).

Y es que la función date() con el parámetro "F" recupera los nombres de los meses en inglés...

Una solución a este problema es usar una array para almacenar los nombre de los meses en español.

Así para escribir la fecha en el formato "13 de marzo de 2010" (día/nombre del mes/año) podríamos usar este código.

<?
$dia = date(j);

$mes = date(n);

$anho= date(Y);

$meses = array("Enero", "Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");
//array con el nombre de los meses en español

$nombre_mes_espanhol = $meses[$mes-1];

/*
recupero el nombre del mes
se resta 1 al valor de $mes puesto que se hace referencia al primer elemento de un
array con el número 0
con date(n) el valor del primer mes del año es 1
*/

echo $dia .' de '. $nombre_mes_espanhol .' de ' . $anho;

?>

Otro problema a resolver con date() es como representar el nombre de los días en español... (o en cualquier otro idioma).

Y es que la función date() con el parámetro "l" recupera los nombres de los días en inglés...

La solución a este problema es usar una array para almacenar los nombre de los días en español:

Así para escribir la fecha en el formato "Jueves 26 de agosto de 2010" (día de la semana / dia / nombre del mes / año) podríamos usar este código.

<?

$nombre_dia = date(w);

$dia = date(j);

$mes = date(n);

$anho= date(Y);

$meses = array("Enero", "Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre");

$nombre_mes = $meses[$mes-1];

$dias = array("Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado");

// array con el nombre de los dís en español

$nombre_dia_espanhol = $dias[$nombre_dia];

// recupero el nombre del día en español

echo $nombre_dia_espanhol . ' ' . $dia .' de '. $nombre_mes .' de ' . $anho;

?>

Es importante insistir que con date() se recupera la fecha y la hora del SERVIDOR. Si el servidor está en Australia (y está configurado con los datos locales), se mostrará la fecha de Australia aún si el usuario está en México.

Sitios de interés

W3Schools

Tutoriales de Php. Y HTML. Y Javascript. El sitio está en inglés.

Sitio de oficial de PHP

Se Puede descargar php para varios sistemas operativos, consultar el manual, postear, etc. El sitio está en español.


Comenta y opina este texto     Lee mi libro de visitas
© 1997-2014 Alain García Gómez
albegago@hotmail.com
El vínculo a este documento es:
http://www.alaingarcia.net/weird/date_php.php

Suscribase a nuestro RSS

Puedes apoyar a este sitio regalándome una c3rvez4