Archivo de la etiqueta: sumar fechas

Sumar días a una fecha en javascript

Hola a todos:

En el post anterior vimos como “Sumar o restar días, semanas, meses o años a una fecha con PHP“.

Hoy me han preguntado como sumar días a una fecha desde javascript y he preparado una función con un pequeño ejemplo de como hacerlo.

La función para sumar o restar días a una fecha seria la siguiente:

Actualización:  La función original se ha modificado debido a un error que provocaba que no se calculasen correctamente algunas fechas, . (Gracias a Edisson y a Gustavo por el aviso). 
// Función que suma o resta días a la fecha indicada

sumaFecha = function(d, fecha)
{
 var Fecha = new Date();
 var sFecha = fecha || (Fecha.getDate() + "/" + (Fecha.getMonth() +1) + "/" + Fecha.getFullYear());
 var sep = sFecha.indexOf('/') != -1 ? '/' : '-';
 var aFecha = sFecha.split(sep);
 var fecha = aFecha[2]+'/'+aFecha[1]+'/'+aFecha[0];
 fecha= new Date(fecha);
 fecha.setDate(fecha.getDate()+parseInt(d));
 var anno=fecha.getFullYear();
 var mes= fecha.getMonth()+1;
 var dia= fecha.getDate();
 mes = (mes < 10) ? ("0" + mes) : mes;
 dia = (dia < 10) ? ("0" + dia) : dia;
 var fechaFinal = dia+sep+mes+sep+anno;
 return (fechaFinal);
 }

La función recibe como parámetros el número de días que se le quiere sumar y la fecha a la  cual que se le van sumar los días.

Si no se le pasa ninguna fecha coge por defecto la fecha actual.

Esta función está pensada para ser usada con fechas en formato dd/mm/aaaa y dd-mm-aaaa. Admite como separador ‘/’ y ‘-‘.

Un ejemplo de llamada seria este:

var fecha = sumaFecha(8,'01/07/2014');
alert(fecha);

En este ejemplo sumaríamos 8 días a la fecha 01/07/2014 sacaría un alert con la fecha ’09/07/2014′.

Espero que os sea de utilidad.

Sumar o restar días, semanas, meses o años a una fecha con PHP

Hola a todos:

Hoy os traigo una función que aunque sencilla puede ser muy útil cuando trabajamos con fechas en PHP.

En ocasiones necesitamos sumar o restar días a la fecha actual o a una fecha dada.

Vamos a crear una pequeña función que nos permite sumar o restar días, semanas, meses o años a una fecha:

<?php
function sumaFechas ($suma,$fechaInicial = false)
{
  $fecha = !empty($fechaInicial) ? $fechaInicial : date('Y-m-d');
  $nuevaFecha = strtotime ($suma , strtotime ( $fecha ) ) ;
  $nuevaFecha = date ( 'Y-m-d' , $nuevaFecha );
  return $nuevaFecha;
}
?>

La función recibe dos parámetros, el primero es la cantidad de días, semanas, meses o años que vamos a sumar o restar y el segundo es la fecha a la que se los vamos a sumar.

Si no se pasa el parámetro fechaInicial la función tomará la fecha actual.

Para sumar 3 días al 15 de junio del 2014 llamamos a la función de esta manera:

echo sumaFechas('3 day', '2014-06-15');

Para sumar 3 semanas:

echo sumaFechas('3 week', '2014-06-15');

Recordad que también podemos restar poniendo el número en negativo:

echo sumaFechas('-4 month', '2014-06-15');

Veamos un ejemplo completo con varias posibilidades que podéis probar y que cubren todas las posibilidades que podéis necesitar:

<?php
function sumaFechas ($suma,$fechaInicial = false)
{
  $fecha = !empty($fechaInicial) ? $fechaInicial : date('Y-m-d');
  $nuevaFecha = strtotime ($suma , strtotime ( $fecha ) ) ;
  $nuevaFecha = date ( 'Y-m-d' , $nuevaFecha );
  return $nuevaFecha;
}
// Suma 5 días a la fecha 2014-06-15
echo sumaFechas('5 day', '2014-06-15').'<br/>';
// Suma 5 días a la fecha actual
echo sumaFechas('5 day').'<br/>';
// Resta una semana a la fecha '2014-06-15'
echo sumaFechas('-1 week', '2014-06-15').'<br/>';
// Suma 3 semanas a la fecha '2014-06-15'
echo sumaFechas('3 week', '2014-06-15').'<br/>';
// Suma 4 meses a la fecha '2014-06-15'
echo sumaFechas('4 month', '2014-06-15').'<br/>';
// Suma 2 años a la fecha '2014-06-15'
echo sumaFechas('2 year', '2014-06-15').'<br/>';
?>

Y eso es todo por hoy, espero que os sirva de ayuda.  😉

No dudéis en dejar en los comentario cualquier duda que os surja.