Tema: sumar fechas
Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/09/2010, 08:06
Avatar de Perr0
Perr0
 
Fecha de Ingreso: mayo-2005
Ubicación: Santiago de Chile, Chile
Mensajes: 676
Antigüedad: 19 años
Puntos: 79
Respuesta: sumar fechas

te dejo 3 ejemplos, probe con una fecha complicada, 31 de cualquier mes porque no todos los meses tienen 31, ve como se comporta

salu2

Código PHP:
<?
$fechavar
="31-01-2010";
print 
"fecha: <b>$fechavar</b><p>";

//para sumar mes, primero crear variable como fecha
list($d,$m,$a)=explode("-",$fechavar);


print 
"<h2>Ejemplo Sumando un mes</h2>";
for(
$i=0;$i<12;$i++){
    
$aumentofecha=mktime(0,0,0,$m+$i,$d,$a);
    print 
"Sumando $i mes en numero=> $aumentofecha - en fecha => ".date("d-m-Y",$aumentofecha)."</br>";
}

print 
"<hr>";
print 
"<h2>Ejemplo Sumando 30 días</h2>";
for(
$i=0;$i<12;$i++){
    
$aumentofecha=mktime(0,0,0,$m,$d+$i*30,$a);
    print 
"Sumando $i mes en numero=> $aumentofecha - en fecha => ".date("d-m-Y",$aumentofecha)."</br>";
}

print 
"<hr>";
//esta opcion se acomoda al numero de dias del mes
//asi par afebrero un mes son 28, como para marzo 31...
print "<h2>Ejemplo Sumando un mes y se regula automaticamente en caso de exceder mes</h2>";
$mesnext=date("n",mktime(0,0,0,$m,$d,$a));
for(
$i=0;$i<12;$i++){
    
$aumentofecha=mktime(0,0,0,$m+$i,$d,$a);
    
$diasmes=date("t",mktime(0,0,0,$mesnext,1,$a));
    
$mesnext++;
    
    if(
$diasmes<$d){
        
$difdias=$d-$diasmes;
        
$aumentofecha=mktime(0,0,0,$m+$i,$d-$difdias,$a);
    }
    print 
"Sumando $i mes en numero=> $aumentofecha - en fecha => ".date("d-m-Y",$aumentofecha)."</br>";
}

?>