PHP: Sumar o Restar Dias a cualquier fecha

Fechas en PHP

Si deseas sumarle o restarle dias a una fecha cualquiera puedes usar la siguiente función que pongo a continuación; la cual espera como entrada una fecha y un numero de días. Si Deseas sumar días, solo pasa el numero sin signo. Si deseas restar dias pasale un numero negativo.
 
 
 
 

El codigo

function dameFecha($fecha,$dia)
{	list($day,$mon,$year) = explode('/',$fecha);
	return date('d/m/Y',mktime(0,0,0,$mon,$day+$dia,$year));		
}
 
 //Sumar 5 dias
echo dameFecha('18/09/2012',5);
//Salida: 23/09/2012

 //Restar 5 dias  
echo dameFecha('18/09/2012',-5);
//Salida: 13/09/2012

//Sumar 12 dias a la fecha actual
echo dameFecha(date('d/m/Y'),12);
//Salida: ...depende de la fecha actual

¿Sencillo y facíl no?

 

Deja tus inquietudes en un comentario. Saludos.
 
 
Enlaces relacionados:
 
 
Anuncios

PHP: Restar o Sumar Dias, Semanas, Meses o Años a la fecha actual

Recordemos que la funcion date(‘Y-m-d’), nos devuelve la fecha actual en el formato ‘Año-mes-dia’ y si queremos otro formato solo cambiamos el orden, por ejemplo date(‘d-m-Y’). El siguiente script muestra como Restar Dias, Semanas, Meses o Años a la fecha actual en PHP.

El codigo

$dt_Ayer= date('Y-m-d', strtotime('-1 day')) ; // resta 1 día
$dt_laSemanaPasada = date('Y-m-d', strtotime('-1 week')) ; // resta 1 semana
$dt_elMesPasado = date('Y-m-d', strtotime('-1 month')) ; // resta 1 mes
$dt_ElAnioPasado = date('Y-m-d', strtotime('-1 year')) ; // resta 1 año
//Mostrar fechas
echo $dt_Ayer;
echo $dt_laSemanaPasada;
echo $dt_elMesPasado;
echo $dt_ElAnioPasado;
/*
Resultado (fecha actual: 2012-09-18):
2012-09-17
2012-09-11
2012-08-18
2011-09-18
*/

…Por el contrario si lo que deseas es sumar entonces solo cambias el signo – por un +, asi:
$dt_5DiasDespues = date('Y-m-d', strtotime('+5 day')) ; // Suma 5 días
$dt_5SemanasDespues = date('Y-m-d', strtotime('+5 week')) ; // Suma 5 semanas
$dt_5MesesDespues = date('Y-m-d', strtotime('+5 month')) ; // Suma 5 meses
$dt_5AniosDespues = date('Y-m-d', strtotime('+5 year')) ; // Suma 5 años
//Mostrar fechas
echo $dt_5DiasDespues;
echo $dt_5SemanasDespues;
echo $dt_5MesesDespues;
echo $dt_5AniosDespues;
/*
Resultado (fecha actual: 2012-09-18):
2012-09-23
2012-10-23
2013-02-18
2017-09-18
*/

¿Facil, no?

 

Si tienes alguna duda expresala en un comentario. Saludos.
 
 
Enlaces relacionados:
 
 

PHP: Obtener el ultimo día de cualquier mes

A veces cuando manejamos fechas, es necesario saber cual es el ultimo día del mes actual. Ho en general cual es el ultimo dia de un mes X. Por ejemplo Febrero tiene por lo general 28 ó 29 dias mientras que Diciembre 31. La funcion que muestro en el siguiente Script calcula y devuelve el ultimo día de cualquier mes, pasandole unicamente el año y mes deseado:

El codigo

function getUltimoDiaMes($elAnio,$elMes) {
  return date("d",(mktime(0,0,0,$elMes+1,1,$elAnio)-1));
}

//Ejemplo de uso
$ultimoDia = getUltimoDiaMes(2013,10);
echo $ultimoDia."<br/>";
echo getUltimoDiaMes(2012,09)."<br/>";
/*
Resultado:
31
30
*/

 

Si te gusto el código expuesto, déjame un comentario. Saludos cordiales.
 
 
Enlaces relacionados:
 
 
A %d blogueros les gusta esto: