tendrías que leer mas sobre la funcion dateTime de php... te pongo un ejemplo aquí ya que se lo tedioso de encontrar la info... aqui por ejemplo voy a preguntar si ya pasaron 24 hs o 1 día de una fecha X que traigo de la base de datos, y si es asi, que imprima algo...
Código PHP:
//obtener fecha actual para compararlo con el ultimo intento
$fecha = getdate();
$today=($fecha["year"]."-".$fecha["mon"]."-".$fecha["mday"]." ".$fecha["hours"].":".$fecha["minutes"].":".$fecha["seconds"]);
//genero una resta de la fecha actual contra el ultimo intento guardado en la BD
//aqui va la fecha de hoy con el año/mes/dia hh/mm/ss...
//este formato y la variable getDate va a depender del tipo de campo fecha con la que vas a comparar
//no es lo mismo un campo timestamp que uno date, asi que los acomodas a las variables $fecha en el orden que necesites o suprimes lo que no usas
$datetime1 = new DateTime($today);
//aqui la fecha que quiero comparar...
$datetime2 = new DateTime($fila_usuario['ultimointento']);
$intervalo = $datetime1->diff($datetime2);
//primero comparamos si y han pasado mas de 24hs desde el ultimo intento fallido
if($intervalo->format('%a')>1){
echo "Ya pasaron 24 hs.";
}