time() sadece saniye döndürdüğü için microtime(true) kullanarak farkı milisaniye cinsinden ölçüp, örneğin if(($now - $_SESSION['last_post_time']) < 0.1) şeklinde kontrol yapmalısın.