PHP
Main Menu 
 
Desarrollo de Páginas Web con PHP 

En esta leccion vamos a ver como algunas funciones relacionadas con el tiempo y la fecha, asi como algunos ejemplos practicos.

 

time

Devuelve el numero de segundos transcurridos desde el 1 de Enero de 1970. A esta forma de expresar fecha y hora se le denomina tmestamp.

 

date(formato, timestamp)

La funcion date devuelve una cadena formateada segun los codigos de formato. Si no le pasamos la variable timestamp nos devuelve la cadena formateada para la fecha y la hora actual.

Los codigos de formato para la funcion date son:

CODIGO DESCRIPCION
a am o pm
A AM o PM
d Dia del mes con ceros
D Abreviatura del dia de la semana (ingles)
F Nombre del mes (ingles)
h Hora en formato 1-12
H Hora en formato 0-23
i Minutos
j Dia del mes sin ceros
l Dia de la semana
m Numero de mes (1-12)
M Abreviatura del mes (ingles)
s Segundos
y Año con 2 digitos
Y Año con 4 digitos
z Dia del año (1-365)

Para ver algunos ejemplos supongamos que ahora es el 7 de abril de 2000 a las 14 horas 30 minutos y 22 segundos:

  • date("d-m-Y") ->  07-04-2000

  • date("H:i:s") ->  14:30:22

  • date("Y")     ->  2000

  • date("YmdHis") -> 20000407143022

  • date("d/m/y H:i a") -> 07/04/00 14:30 pm

  • date(d-m-Y H:i, time()) -> el momento actual

 

mktime(hora, min, seg, mes, dia, año)

La funcion mktime devuelve una variable de tipo timestamp a partir de las coordenadas dadas. La principal utilidad de esta funcion es la de añadir o quitar una determinada cantidad de fecha u horas a una dada.

<?PHP  

function restarDias($numdias, $date) {

if (isset($date)) {

$date = time();

}

list($hora, $min, $seg, $dia, $mes, $anno) = explodest($hora, $min, $seg, $dia, $mes, $anno) = explode( " ", date( "H i s d m Y"));

 

$d = $dia - $numdias;

$fecha = date("d-m-Y", mktime($hora, $min, $seg, $mes, $d, $anno));

return $fecha;

echo restarDias(5)."<BR>";
echo restarDias(10)."<BR>";

?>

 

chekdate (mes, dia, año)

La funcion chekdate comprueba si una fecha es valida, si es asi devuelve TRUE y si no lo es FALSE. Una fecha se considera valida si el año esta entre 1900 y 32767, el mes entre 1 y 12, y el dia es menor o igual que numero de dias total del mes en cuestion.

<?PHP

if (checkdate(31, 2, 2000)) {

echo "La fecha es correcta";

} else {

echo "La fecha es incorrecta";

}

?>

Para el ejemplo anterior nos daria que la fecha es incorrecta, febrero nunca tiene un dia 31.