Foros del Web » Programando para Internet » PHP »

numero de dias entre 2 fechas

Estas en el tema de numero de dias entre 2 fechas en el foro de PHP en Foros del Web. Hola amigos, alguien me podria echar una manita sobre esto: me gustaria obtener el numero de dias entre 2 fechas dadas, pero de la siguiente ...
  #1 (permalink)  
Antiguo 02/06/2005, 06:06
Avatar de puchitol  
Fecha de Ingreso: diciembre-2003
Ubicación: ELCHE
Mensajes: 322
Antigüedad: 20 años, 4 meses
Puntos: 0
numero de dias entre 2 fechas

Hola amigos,

alguien me podria echar una manita sobre esto:

me gustaria obtener el numero de dias entre 2 fechas dadas, pero de la siguiente manera ...

por ejemplo el numero total de dias que son Lunes y Miercoles o Martes y jueves, por ejemplo:

seria algo asi (esto es un ejemplo):

del 1/1/2005 (lunes) al 12/1/2005 (viernes) habria 4 dias que son Lunes y Miercoles o Martes y Jueves, y tambien habria 6 dias que son Lunes, Miercoles y viernes, etc ...

Alguien tiene alguna sugerencia o me podria dar alguna pista?

muchas gracias de antemano

un saludo
__________________
If you think fuck is funny, fuck yourself and save your money,
espero que entendais la moraleja... je, je, je
  #2 (permalink)  
Antiguo 02/06/2005, 06:18
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
Código PHP:
function difdias ($diainicial,$diafinal) {
  
$day substr($diainicial,8,2);
  
$month substr($diainicial,5,2);
  
$year substr($diainicial,0,4);
  if (!
checkdate($month,$day,$year)) {return false; }
  
$dia[0] = date("l",mktime(0,0,0,$month,$day,$year));

  
$day substr($diafinal,8,2);
  
$month substr($diafinal,5,2);
  
$year substr($diafinal,0,4);
  if (!
checkdate($month,$day,$year)) {return false; }
  
$dia[1] = date("l",mktime(0,0,0,$month,$day,$year));
  for (
$a=0;$a<=1;$a++) {
    switch (
$dia[$a]) {
      case 
"Monday":
        
$dia[$a] = 1;
        break;
      case 
"Tuesday":
        
$dia[$a] = 2;
        break;
      case 
"Wednesday":
        
$dia[$a] = 3;
        break;
      case 
"Thursday":
        
$dia[$a] = 4;
        break;
      case 
"Friday":
        
$dia[$a] = 5;
        break;
      case 
"Saturday":
        
$dia[$a] = 6;
        break;
      case 
"Sunday":
        
$dia[$a] = 7;
        break;
    }
  }
  if (
$dia[0] > $dia[1]) { $dia[0] -= 7; }
  return 
$dia[1] - $dia[0];
}

echo 
difdias("2005-01-01","2005-01-12"); 

Última edición por Seppo; 02/06/2005 a las 06:37 Razón: Errores tontos
  #3 (permalink)  
Antiguo 02/06/2005, 14:26
Avatar de puchitol  
Fecha de Ingreso: diciembre-2003
Ubicación: ELCHE
Mensajes: 322
Antigüedad: 20 años, 4 meses
Puntos: 0
Gracias por contestar tan rapido, pero no es eso lo que busco.

Lo que busco es, por ejemplo, saber el numero de lunes y miercoles que hay entre dos fechas, es decir, elnumero de dias que son lunes o miercoles entre esas fechas.

un saludo
__________________
If you think fuck is funny, fuck yourself and save your money,
espero que entendais la moraleja... je, je, je
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 19:16.