Current File : //opt/RZphp73/includes/doc/System_Daemon/examples/bug_test_c.php
#!/usr/bin/php -q
<?php
/**
 * System_Daemon turns PHP-CLI scripts into daemons.
 *
 * PHP version 5
 *
 * @category  System
 * @package   System_Daemon
 * @author    Kevin <kevin@vanzonneveld.net>
 * @copyright 2008 Kevin van Zonneveld
 * @license   http://www.opensource.org/licenses/bsd-license.php New BSD Licence
 * @link      http://github.com/kvz/system_daemon
 */

/**
 * System_Daemon Example Code
 *
 * If you run this code successfully, a daemon will be spawned
 * and stopped directly. You should find a log enty in
 * /var/log/simple.log
 *
 */

// Make it possible to test in source directory
// This is for PEAR developers only
ini_set('include_path', ini_get('include_path').':..');

// Include Class
error_reporting(E_ALL);
require_once "System/Daemon.php";


// Allowed arguments & their defaults
$runmode = array(
    "no-daemon" => false,
    "help" => false,
    "write-initd" => false,
    "logfirst" => false,
);

// Scan command line attributes for allowed arguments
foreach ($argv as $k=>$arg) {
    if (substr($arg, 0, 2) == "--" && isset($runmode[substr($arg, 2)])) {
        $runmode[substr($arg, 2)] = true;
    }
}


// Bare minimum setup
System_Daemon::setOption("appName", "simple");
System_Daemon::setOption("appDescription", "Testing");
System_Daemon::setOption("authorEmail", "kevin@vanzonneveld.net");

//System_Daemon::setOption("appDir", dirname(__FILE__));
System_Daemon::log(System_Daemon::LOG_INFO, "Daemon not yet started so ".
    "this will be written on-screen");

function fncProcessJobs() {
    return true;
}

// Spawn Deamon!
System_Daemon::start();

$runningOkay = true;
while (!System_Daemon::isDying() && $runningOkay) {
    if ($runmode['logfirst']) {
        System_Daemon::getOption("appName");
    }
    
    $runningOkay = fncProcessJobs();
    echo " - ".time()."\n";
    System_Daemon::iterate(2);
}

// Your normal PHP code goes here. Only the code will run in the background
// so you can close your terminal session, and the application will
// still run.

System_Daemon::stop();