Funciones de fecha
PHP es pródigo en cuanto a posibilidades de manejo de fechas y horas. Para ello, cuenta, entre otras, con las siguientes funciones:
date (cadena de formato)
Devuelve valores de fecha y hora actuales utilizando los parámetros que se señalan en la tabla para establecer el formato de salida de los datos. Dentro de la misma cadena de formato puede contener tantos parámetros como se deseen.
Como puedes ver en el ejemplo que hay al final de la tabla respeta los caracteres separadores (espacios, dos puntos, guiones, etcétera) que se hubieran incluido en la cadena de formato siempre que no coincidan con ninguno de los parámetros PHP para esta cadena.
¡Cuidado!
No olvides que PHP se ejecuta en el servidor que suele estar en un ordenador remoto. Por lo tanto, fecha y hora locales se refieren al lugar donde está instalado el servidor y que en nuestro caso servidor y cliente coinciden en un mismo equipo y coincidirán la hora del sistema con la del servidor.
Pero si alojaras esta página en un hosting australiano, PHP nos devolvería los valores con hora y fecha de las antípodas.
date (formato, número)
Esta función nos devuelve la fecha y hora del tiempo Unix (¿recuerdas aquello tan fino de Unix Epoch?) indicado en el parámetro número.
Recuerda también que ese número indica segundos contados a partir de la 0:00:00 (GMT) del día 1 de Enero de 1970.
gmdate(cadena formato)
Se comporta de forma idéntica a date() con la única diferencia de que devuelve la hora y fecha GMT.
Si te fijas en el ejemplo habrá una o dos horas de diferencia según accedas a esta página en verano o invierno.
gmdate (formato, número)
Los mismos comentarios que con el caso anterior. La única diferencia es que devuelve hora GMT.
checkdate(mes,día,año)
Comprueba si los valores de los parámetros mes están dentro del rango permitido (de 1 a 12), si el parámetro día es un valor válido para ese mes (considera años bisiestos) y si el valor del año pertenece al rango 0 a 32767.
Devuelve VERDADERO si los valores corresponden a una fecha correcta y FALSO en el caso de que no ocurra así.
gettimeofday()
Esta función devuelve un array asociativo con los siguientes índices:
sec
El valor asociado a este índice del array recoge la hora actual (Unix Each) expresada en segundos
usec
El valor asociado a usec recoge la fracción en microsegundos de hora actual (Unix Each)
minuteswest
Devuelve los minutos al Oeste de Greenwich
dsttime()
Devuelve el tipo de corrección horaria según horarios de verano/invierno. El valor UNO corresponde a horario de verano, el valor CERO al de invierno y MENOS UNO en el caso en que sea desconocido.
getdate()
Devuelve un array asociativo con parámetros de la fecha actual.
Los índices de este array y sus valores son los que puedes ver en el ejemplo.
getdate(número)
Interpreta el número como una fecha Unix Each (segundos transcurridos desde el día 1 de Enero de 1970) y devuelve un array asociativo con los valores relativos a esa fecha.
Los índices de este array y sus valores son idénticos a los de getdate() y puedes verlos en el ejemplo.
microtime()
Esta función devuelve la fracción de microsegundos de la hora actual expresada en tiempo Unix.
time()
Esta función devuelve la hora actual en segundos expresada en tiempo Unix.
mktime (hora, min, seg, mes, día, año , horario)
Devuelve el tiempo Unix de la fecha pasada como parámetro a la función. Es fundamental mantener la secuencia de los datos.
Si se omiten argumentos (sólo pueden omitirse por la derecha) tomará los de la fecha actual.
El parámetro horario es opcional y admite los valores 0 (horario de invierno), 1 (horario de verano).
Cuando el parámetro día es cero devuelve el último día del mes anterior, pero si pasamos cero como parámetro de mes nos dará un error.
date (cadena de formato)
Devuelve valores de fecha y hora actuales utilizando los parámetros que se señalan en la tabla para establecer el formato de salida de los datos. Dentro de la misma cadena de formato puede contener tantos parámetros como se deseen.
Como puedes ver en el ejemplo que hay al final de la tabla respeta los caracteres separadores (espacios, dos puntos, guiones, etcétera) que se hubieran incluido en la cadena de formato siempre que no coincidan con ninguno de los parámetros PHP para esta cadena.
¡Cuidado!
No olvides que PHP se ejecuta en el servidor que suele estar en un ordenador remoto. Por lo tanto, fecha y hora locales se refieren al lugar donde está instalado el servidor y que en nuestro caso servidor y cliente coinciden en un mismo equipo y coincidirán la hora del sistema con la del servidor.
Pero si alojaras esta página en un hosting australiano, PHP nos devolvería los valores con hora y fecha de las antípodas.
Parámetros de la función date()
Parámetros de formato de date() | |||
Valor | Funcionalidad | Sintaxis | Resultado |
A | AM-PM | date("A") | AM |
a | am-pm | date("a") | am |
d | Día del mes en formato de 2 dígitos | date("d") | 08 |
j | día del mes sin ceros a la izquierda | date("j") | 8 |
F | Nombre del mes (texto completo) | date("F") | February |
M | Nombre del mes (3 letras) | date("M") | Feb |
m | Nº del mes (de 01 a 12) con dos dígitos | date("m") | 02 |
n | Nº del mes (de 1 a 12) sin dos dígitos | date("n") | 2 |
Y | Año con cuatro dígitos | date("Y") | 2009 |
y | Año con dos dígitos | date("y") | 09 |
G | Hora 0-23 sin ceros a la izquierda | date("G") | 9 |
H | Hora 0-23 con dos dígitos | date("H") | 09 |
g | Hora 1-12 sin ceros a la izquierda | date("g") | 9 |
h | Hora 01-12 con dos dígitos | date("h") | 09 |
i | Minutos de 00 a 59 con dos dígitos | date("i") | 20 |
s | Segundos de 00 a 59 con dos dígitos | date("s") | 43 |
l | día semana en texto completo | date("l") | Sunday |
D | Día de la semana (tres letras) | date("D") | Sun |
w | día semana de 0 (domingo) a 6 (sabado) | date("w") | 0 |
z | días transcurridos del año actual | date("z") | 38 |
t | Número de días mes actual | date("t") | 28 |
L | Año actual bisiesto (1), no bisiesto (0) | date("L") | 0 |
Z | Diferencia (seg.) horaria local con GMT | date("Z") | 3600 |
U | Segundos Unix Epoch | date("U") | 1234081243 |
S | Sufijo ordinal inglés | date("S") | th |
date (formato, número)
Esta función nos devuelve la fecha y hora del tiempo Unix (¿recuerdas aquello tan fino de Unix Epoch?) indicado en el parámetro número.
Recuerda también que ese número indica segundos contados a partir de la 0:00:00 (GMT) del día 1 de Enero de 1970.
gmdate(cadena formato)
Se comporta de forma idéntica a date() con la única diferencia de que devuelve la hora y fecha GMT.
Si te fijas en el ejemplo habrá una o dos horas de diferencia según accedas a esta página en verano o invierno.
gmdate (formato, número)
Los mismos comentarios que con el caso anterior. La única diferencia es que devuelve hora GMT.
checkdate(mes,día,año)
Comprueba si los valores de los parámetros mes están dentro del rango permitido (de 1 a 12), si el parámetro día es un valor válido para ese mes (considera años bisiestos) y si el valor del año pertenece al rango 0 a 32767.
Devuelve VERDADERO si los valores corresponden a una fecha correcta y FALSO en el caso de que no ocurra así.
gettimeofday()
Esta función devuelve un array asociativo con los siguientes índices:
sec
El valor asociado a este índice del array recoge la hora actual (Unix Each) expresada en segundos
usec
El valor asociado a usec recoge la fracción en microsegundos de hora actual (Unix Each)
minuteswest
Devuelve los minutos al Oeste de Greenwich
dsttime()
Devuelve el tipo de corrección horaria según horarios de verano/invierno. El valor UNO corresponde a horario de verano, el valor CERO al de invierno y MENOS UNO en el caso en que sea desconocido.
getdate()
Devuelve un array asociativo con parámetros de la fecha actual.
Los índices de este array y sus valores son los que puedes ver en el ejemplo.
getdate(número)
Interpreta el número como una fecha Unix Each (segundos transcurridos desde el día 1 de Enero de 1970) y devuelve un array asociativo con los valores relativos a esa fecha.
Los índices de este array y sus valores son idénticos a los de getdate() y puedes verlos en el ejemplo.
microtime()
Esta función devuelve la fracción de microsegundos de la hora actual expresada en tiempo Unix.
time()
Esta función devuelve la hora actual en segundos expresada en tiempo Unix.
mktime (hora, min, seg, mes, día, año , horario)
Devuelve el tiempo Unix de la fecha pasada como parámetro a la función. Es fundamental mantener la secuencia de los datos.
Si se omiten argumentos (sólo pueden omitirse por la derecha) tomará los de la fecha actual.
El parámetro horario es opcional y admite los valores 0 (horario de invierno), 1 (horario de verano).
Cuando el parámetro día es cero devuelve el último día del mes anterior, pero si pasamos cero como parámetro de mes nos dará un error.
Un ejemplo de fecha actual:
Este otro script devolverá la fecha y hora en la que el tiempo Unix era de 456.573.426 segundos.
devolvería: Este otro ejemplo devolverá la fecha y hora GMT coincidente con el tiempo Unix 456.573.426.
|
No hay comentarios:
Publicar un comentario