PHP: si $timestamp tiene más de 12 semanas, entonces...

echo ($timestamp) da "2012-05-03 15:35:46"

¿Cómo se vería un comando PHP que hace:"if $timestamp is older than 12 weeks then…"

Gracias por cualquier ayuda!

preguntado el 03 de mayo de 12 a las 14:05

¡Sin esfuerzo ni búsqueda en la web! -

Busque el time() función, que podría ser útil para usted. Junto con date() función y el strtotime() función. -

4 Respuestas

Esta es la forma más rápida de hacerlo en PHP en términos de microoptimización.

if(strtotime($timestamp) <= time() - (60*60*24*7*12)){
    // 60 secs * 60 mins * 24 hours * 7 days * 12 weeks
}

Por favor, ve a leer sobre strtotime para saber cómo convertir la marca de tiempo a unixtime. Lea también sobre hora función.

contestado el 03 de mayo de 12 a las 14:05

@Xavier ¡No hay problema! La próxima vez, investiga más. - David Belanger

Lo que necesitas es strtotime()!

$timestamp = strtotime($timestamp);
$twelveWeeksAgo = strtotime('-12 weeks');

if($timestamp < $twelveWeeksAgo) {
 // do something
}

Hay varias formas de verificar esto, esta es la más explicativa de un vistazo en mi humilde opinión.

contestado el 03 de mayo de 12 a las 14:05

$time_to_compare  = new DateTime();
$twelve_weeks_ago = new DateTime ("-12 weeks");
if ($time_to_compare < $twelve_weeks_ago)
{
    // Do stuff
}

contestado el 03 de mayo de 12 a las 14:05

Si está usando php > 5.2, puede usar los objetos DateTime y DateInterval:

$now = new DateTime();
$before = bew DateTime("2012-05-03 15:35:46");

$diff = $now->diff($before);

if ($diff->d > (12 * 7)) {
    print "Older than 12 weeks";
}

Vea aquí la documentación de los objetos anteriores.

contestado el 03 de mayo de 12 a las 14:05

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.