funciona bien exepto para este caso:
Código PHP:
// deberia devolver 30 dias
echo fechadif('2010-10-18','2010-09-18','dias');
// ejemplo que si funciona devuelve 31
echo fechadif('2010-08-18','2010-07-18','dias');
Código PHP:
function fechadif($date1,$date2,$tipo){
// aaaa-mm-dd
$s = strtotime($date1)-strtotime($date2);
// la mitad del tiempo en segundos
$difsegundos = $s;
$difsegundosm = $difsegundos;
$difminutom=$difsegundos/60;
$difhoram = $difminutom/60;
$difdiam= $difhoram/24;
// todo como predeterminado
$hora=date("H:i:s",$difsegundos);
$diferencia = $hora;
if($tipo == 'segundos'){
$diferencia = $difsegundosm;
}
if($tipo == 'minutos'){
$diferencia = $difminutom;
}
if($tipo == 'horas'){
$diferencia = $difhoram;
}
if($tipo == 'dias'){
$diferencia = $difdiam;
}
$diferencia=intval($diferencia);
return $diferencia;
}