Comparar la fecha dada con la de hoy

Resuelto alexus asked hace 54 años • 14 respuestas

tengo seguidores

$var = "2010-01-21 00:00:00.0"

Me gustaría comparar esta fecha con la fecha de hoy (es decir, me gustaría saber si es $varanterior a hoy o es igual a hoy o no).

¿Qué función necesitaría usar?

alexus avatar Jan 01 '70 08:01 alexus
Aceptado
strtotime($var);

Lo convierte en un valor de tiempo.

time() - strtotime($var);

Te da los segundos desde$var

if((time()-(60*60*24)) < strtotime($var))

Comprobaremos si $varha estado dentro del último día.

Tyler Carter avatar Jan 21 '2010 23:01 Tyler Carter

Ese formato es perfectamente apropiado para una comparación de cadenas estándar, por ejemplo

if ($date1 > $date2){
  //Action
}

Para obtener la fecha de hoy en ese formato, simplemente use: date("Y-m-d H:i:s").

Entonces:

$today = date("Y-m-d H:i:s");
$date = "2010-01-21 00:00:00";

if ($date < $today) {}

Ésa es la belleza de ese formato: ordena muy bien. Por supuesto, eso puede ser menos eficiente, dependiendo de sus circunstancias exactas, pero también podría ser mucho más conveniente y conducir a un código más fácil de mantener; necesitaríamos saber más para realmente tomar esa decisión.

Para la zona horaria correcta, puede utilizar, por ejemplo,

date_default_timezone_set('America/New_York');

Haga clic aquí para consultar las zonas horarias PHP disponibles.

Bobby Jack avatar Jan 22 '2010 00:01 Bobby Jack