2012-05-29 14 views
19

Estoy tratando de usar la función de fecha de PHP para obtener la fecha de 7 días antes en el formato AAAA-MM-DD.PHP Fecha Función Siete días anterior

date('Y-m-d'); 

cuando intento

date('Y-m-d-7'); 

consigo un error

+0

uso 'date ('Ym-d', strtodate ('- 7 días'))' – Gavin

+0

@Gavin Call a la función indefinida strtodate() –

+2

La función es ['strtotime'] (http://uk3.php.net/manual/en/function.strtotime.php). – lonesomeday

Respuesta

62

Utilice el método strtotime provisto por PHP.

date('Y-m-d', strtotime('-7 days'))

Gracias a @lonesomeday por señalar mi error en los comentarios;)

+0

¿Cómo se obtiene con las horas, los minutos y los segundos también ... No puedo conseguir que trabaje con 'Ymd H: i: s' – Matthew

+0

Hola @Matthew - lo siguiente funcionó bien para mí 'echo date ('Ymd H: i: s ', strtotime (' - 7 días ')); 'regresando' 2017-01-02 08: 37: 51' - ¿Qué estabas recibiendo? – Gavin

+0

Gavin, gracias, lo tengo funcionando. No sé lo que estaba haciendo mal, ni siquiera puedo recordar. Te agradezco que lo confirmes. Gracias. – Matthew

19

Con esto, al igual que con todas las cosas de la fecha de PHP, que es más agradable de usar la clase DateTime.

$date = new DateTime('7 days ago'); 
echo $date->format('Y-m-d'); 
+0

¿Hay alguna forma en que no lo haga en una línea? ya que lo estoy insertando en una consulta –

+0

Entonces, ¿en qué consulta lo está insertando? SQL? – iiro

+0

no. Llamar a Google Analytics API –

Cuestiones relacionadas