Curso POO PHP Datas e horas
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)