2011-03-02 22 views
33

Tengo la fecha de este formato el 3 de marzo de 2011 en la base de datos y necesito extenderla con 7 días. Me refiero a php - agregar + formato de 7 días a la fecha mm dd, YYYY

 $date = $date + 7
. ¿Hay alguna función incorporada para hacer eso?

+1

posible duplicado de [Agregar número de días a una fecha] (http://stackoverflow.com/questions/2332681/add-number-of-days-to-a-date) – Gordon

+0

¿Qué formato es el tipo de fecha en su base de datos? Su mejor opción será extraer los datos y ejecutarlos a través de su propia función, aumentar los días adicionales a la cadena y luego volver a mostrarlos en la base de datos. –

+0

y muchos más en http://stackoverflow.com/search?q=add+7+days+date+php – Gordon

Respuesta

97
$date = "Mar 03, 2011"; 
$date = strtotime($date); 
$date = strtotime("+7 day", $date); 
echo date('M d, Y', $date); 
+1

¿Hay también alguna forma de comparar el formulario final con la fecha de hoy? (por ejemplo, si ($ date Michael

+0

@Michael el resultado de strtotime es un entero. Este número entero representa el número de segundos desde la época de UNIX (1 de enero de 1970 00: 00:00). Estos enteros se pueden comparar usando el código exacto que acaba de usar. –

+0

@Michael la función 'time()' se puede usar para obtener la fecha/hora actual como una marca de tiempo UNIX para la comparación. –

3

$oneweekfromnow = strtotime("+1 week", strtotime("<date-from-db>")); 

en otra nota, ¿por qué tienes la fecha en la base de datos de esa manera?

16

El tema "1 mes" con strtotime

Como se observó en varios blogs, strtotime() resuelve el "1 mes" ("el mes que viene") tema en los días que no existen en el mes siguiente de forma diferente a otras implementaciones, como por ejemplo MySQL.

$dt = date("Y-m-d"); 
echo date("Y-m-d", strtotime("$dt +1 day")); // PHP: 2009-03-04 
echo date("Y-m-d", strtotime("2009-01-31 +2 month")); // PHP: 2009-03-31 
5

echo date('d/m/Y', strtotime('+7 days'));

+0

¡Y la última respuesta funcionó para mí! ¡Agradable y simple! ¡Salud! – Notorious

6

Otra forma más reciente y el estilo de objeto de hacerlo:

$date = new DateTime('now'); 
$date->add(new DateInterval('P7D')); 

php doc of datetime add

Cuestiones relacionadas