Ver Mensaje Individual
  #5 (permalink)  
Antiguo 09/03/2008, 01:17
fcopacheco
 
Fecha de Ingreso: enero-2008
Mensajes: 68
Antigüedad: 17 años
Puntos: 1
Re: Trabajar con fechas - Codigo Abierto

Arregle la funcion Contar Dias
aqui va el nuevo codigo para la funcion

Código PHP:
function ContarDias($date)
    {
        if(!isset(
$date->anno))
            
$date = new fechaCompleta($date);
        
$dend=new fechaCompleta($this->ObtenerFecha());
        
$end=0;
        
$end+=(int)$dend->dia;
        for(
$dend->mes-=1;$dend->mes>0;$dend->mes-=1)
            if(
$dend->mes==and esBisiesto($dend->anno)) $end+=29;
            elseif(
$dend->mes==2$end+=28;
            elseif(
$dend->mes==or $dend->mes==or $dend->mes==or $dend->mes==or $dend->mes==or $dend->mes==10 or $dend->mes==12$end+=31;
            elseif(
$dend->mes==or $dend->mes==or $dend->mes==or $dend->mes==or $dend->mes==11$end+=30;
        for(
$dend->anno-=1;$dend->anno>0;$dend->anno-=1)
            if(
esBisiesto($dend->anno)) $end+=366;
            else 
$end+=365;
        
$begin=0;
        
$begin+=(int)$date->dia;
        for(
$date->mes-=1;$date->mes>0;$date->mes-=1)
            if(
$date->mes==and esBisiesto($date->anno)) $begin+=29;
            elseif(
$date->mes==2$begin+=28;
            elseif(
$date->mes==or $date->mes==or $date->mes==or $date->mes==or $date->mes==or $date->mes==10 or $date->mes==12$begin+=31;
            elseif(
$date->mes==or $date->mes==or $date->mes==or $date->mes==or $date->mes==11$begin+=30;
        for(
$date->anno-=1;$date->anno>0;$date->anno-=1)
            if(
esBisiesto($date->anno)) $begin+=366;
            else 
$begin+=365;
        return (int)(
$end-$begin);
    } 

Les cuento algo mas sobre esta libreria

facilmente podriamos restar fechas o sumarlas utilizando la funcion mktime()
pero solo serviria para fechas que estan por sobre el año 1970

la gracia de esta libreria es que se puede trabajar con cualquier fecha despues del año 0;