Curso POO PHP Datas e horas

De Manuais Informática - IES San Clemente.
Revisión del 09:58 26 jul 2013 de Vlourido (discusión | contribuciones)
(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Ir a la navegación Ir a la búsqueda

Datas e horas

En PHP non existe un tipo de datos específico para traballar con datas e horas. A información de data e hora almacénase internamente como un número enteiro. Non obstante, dentro das funcións de PHP tes á túa disposición unhas cantas para traballar con ese tipo de datos.

Unha das máis útiles é quizais a función date, que che permite obter unha cadea de texto a partir dunha data e hora, co formato que elixas. A función recibe dous parámetros, a descrición do formato e o número enteiro que identifica a data, e devolve unha cadea de texto formatada.

O formato débelo compoñer utilizando como base unha serie de carácteres dos que figuran na seguinte táboa.

Carácter Resultado
d día do mes con dous díxitos
j día do mes con un ou dous díxitos ( sen ceros iniciais )
z día do ano, comezando polo cero ( 0 = 1 de xaneiro )
N día da semana ( 1 = luns, …, 7 = domingo )
w día da semana ( 0 = domingo, …, 6 = sábado )
l texto do día da semana, en inglés ( Monday, …, Sunday )
D texto do día da semana, solo tres letras, en inglés ( Mon, …, Sun )
W número da semana do ano
m número do mes con dous díxitos
n número do mes con un ou dous díxitos ( sen ceros iniciais )
t número de días que ten o mes
F texto do día do mes, en inglés ( January, …, December )
M texto do día do mes, solo tres letras, en inglés ( Jan, …, Dec )
Y número do ano
y dous últimos díxitos do número do ano
L 1 se o ano é bisesto, 0 se non o é
h formato de 12 horas, sempre con dous díxitos
H formato de 24 horas, sempre con dous díxitos
g formato de 12 horas, con un ou dous díxitos ( sen ceros iniciais )
G formato de 24 horas, con un o dos díxitos (sen ceros iniciais )
i minutos, sempre con dous díxitos
s segundos, sempre con dous díxitos
u microsegundos
a am ou pm, en minúsculas
A AM ou PM, en maiúsculas
r data enteira con formato RFC 2822

Ademais, o segundo parámetro é opcional. Se non se indica, utilizarase a hora actual para crear a cadea de texto.

Para que o sistema poida darche información sobre a túa data e hora, debes indicarlle a túa zona horaria. Podes facelo coa función date_default_timezone_set. Para establecer a zona horaria en España peninsular debes indicar:

date_default_timezone_set('Europe/Madrid');

Para obter a data e hora actual en formato de número enteiro podes empregar a función time. Para pasar unha data (dia, mes, ano) e hora (hora, minutos, segundos) a número enteiro, tes a función mktime. Outras funcións como getdate devolven un array con información sobre a data e hora actual.

Na documentación de PHP podes consultar todas as funcións para xestionar datas e horas.

--Víctor Lourido 14:41 25 jun 2013 (CEST)