Foros del Web » Programando para Internet » PHP »

Fechas que contienen dentro de dos fechas

Estas en el tema de Fechas que contienen dentro de dos fechas en el foro de PHP en Foros del Web. Hola a tod@s! Me gustaría hacer en PHP un script que recibe dos fechas, digamos el desde y hasta y devuelve todas las fechas que ...
  #1 (permalink)  
Antiguo 02/05/2012, 05:33
 
Fecha de Ingreso: mayo-2004
Mensajes: 102
Antigüedad: 20 años, 6 meses
Puntos: 5
Fechas que contienen dentro de dos fechas

Hola a tod@s!
Me gustaría hacer en PHP un script que recibe dos fechas, digamos el desde y hasta y devuelve todas las fechas que hay dentro, algo así como esto:

<?PHP

$from = '02/05/2012';
$to = '06/05/2012';


for($i=$from; $i < $to; $i++ ){

$los_dias_son = implode(',',$i);

}

echo $los_dias_son; //return 03/05/2012,04/05/2012,05/05/2012
?>

Buah no se ustedes pero tengo un gran problemas con las fechas en todos los lenguajes de programacion! no se porque los meses no tendran todos 30 dias.
Gracias de antemano!
salu2
__________________
Bruno Quintana
  #2 (permalink)  
Antiguo 02/05/2012, 06:52
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 16 años, 3 meses
Puntos: 139
Respuesta: Fechas que contienen dentro de dos fechas

Mira esto que hice a ver si te sirve.

Código PHP:
Ver original
  1. # El formato valido m/d/y
  2. $inicial = strtotime("05/02/2012");
  3. $final   = strtotime("05/06/2012");
  4.  
  5. $seg = 86400;
  6. $_str = ($final - $inicial);
  7. $total_dias = ($_str / $seg)-1;
  8. $new_date = $inicial;
  9.  
  10.     for ($i=0; $i < $total_dias; $i++){
  11.    
  12.         $new_date = ($new_date + $seg);
  13.            
  14.             echo date('m/d/Y',$new_date).'<br>';
  15.     }
  16.    
  17. echo '<b> Total de dias '.$total_dias.'<b>';


Me parece que el formato d/m/y no es valido para strtotime


Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:12.