Hola, usao estas funciones para sumar o restar dias a una fecha:
Código PHP:
//Sumem dies a una data
function sumadies($data,$ndies){
$any = substr($data,0,4);
$mes = substr($data,4,2);
$dia = substr($data,6,2);
$nueva = mktime(0,0,0, $mes,$dia,$any) + $ndies * 24 * 60 * 60;
$novadata = date("d/m/Y",$nueva);
return $novadata;
}
//Resta dies a una data
function restadies($data,$ndies){
$any = substr($data,0,4);
$mes = substr($data,4,2);
$dia = substr($data,6,2);
$nueva = mktime(0,0,0, $mes,$dia,$any) - $ndies * 24 * 60 * 60;
$novadata = date("d/m/Y",$nueva);
return $novadata;
}
el caso es q si yo pongo 04/06/2007 y le paso 180 dias me devuelve 30/11/2007, pero si al 30/11/2007 le resto los 180 dias no me da 04/06/2007 sino q devuelve 03/06/2007... el descuadre tambien se me produce si sumo varios años es decir, 3 años = 1095, 4 años = 1460!
alguien sabe el motivo? xq me descuadra la fecha?