No necesitas un cronómetro, lo que necesitas es comparar fechas a través de eventos, es decir que no puedes dejar un script corriendo simplemente para ir contando.
Si usas CRON-jobs puedes ejecutar un script cada determinado tiempo, y así, usando bases de datos puedes ir generando la lógica necesaria para lo que buscas.
No necesitas de ninguna función mágica o especial mas que time(), la lógica de cómo y cuando se va a ejecutar tu sistema de comprobación es el verdadero problema, y ahí tu debes definir tu propia solución.