Some people use cronjobs for the same Possible use cases. Crontab is fine but it only allows you to run a PHP file every minute or so.
What if the previous run hasn't finished yet? Overlap can seriously damage your data & cause siginificant load on your machines.
What if you can't afford to wait a minute for the cronjob to run? Maybe you need to trigger a process the moment a record is inserted?
What if you want to keep track of multiple 'runs' and store data in memory.
What if you need to keep your application listening (on a socket for example)