Because the Process Control Extensions' documentation is a bit rough, I decided to figure it out once, and then wrap my knowledge and the required code inside a PEAR class called: System_Daemon. And so now you can just:

System_Daemon Usage

require_once "System/Daemon.php";                 // Include the Class

System_Daemon::setOption("appName""mydaemon");  // Minimum configuration
System_Daemon::start();                           // Spawn Deamon!

And that's all there is to it. The code after that, will run in your server's background. So next, if you create a while(true) loop around that code, the code will run indefinitely. Remember to build in a sleep(5) to ease up on system resources.

Features & Characteristics Here's a grab of System_Daemon's features:

  • Daemonize any PHP-CLI script

  • Simple syntax

  • Driver based Operating System detection

  • Unix only

  • Additional features for Debian / Ubuntu based systems like:

  • Automatically generate startup files (init.d)

  • Support for PEAR's Log package

  • Can run with PEAR (more elegance & functionality) or without PEAR (for standalone packages)

  • Default signal handlers, but optionally reroute signals to your own handlers.

  • Set options like max RAM usage

How it works internally (Previous) System_Daemon examples (Next)
Last updated: Sat, 23 Jun 2018 — Download Documentation
Do you think that something on this page is wrong? Please file a bug report.
View this page in:
  • English

User Notes:

There are no user contributed notes for this page.