// Выходим из родительского процесса, привязанного к консоли... exit(0); } // Делаем основным процессом дочерний... posix_setsid(); // Включаем тики, в противном случае скрипт просто повисает и не реагирует на внешние раздражители... declare (ticks=1); // Здесь я подключаю всякую нужную штуку... include __DIR__ . '/Daemon.php'; include __DIR__ . '/ExampleClass.php'; // Класс изображающий полезную нагрузку... $example = new ExampleClass(); // Именно эта функция делает всякую полезую нам нагрузку, которую мы хотим демонизировать... // Если нам нужны какие-нибудь классы не забываем упомянуть их тут в противном случае простоо не получите к ним доступ... $func = function () use($example) { // Тут живёт всякая полезная нагрука... $example->test(); return true; }; // Собственно создаём демона, соответственно говорим ему куда записывать свой pid... $daemon = new Daemon('/tmp/daemon.pid'); // Закрываем порочные связи со стандартным вводом-выводом... fclose(STDIN); fclose(STDOUT); fclose(STDERR); // Перенаправляем ввод-вывод туда куда нам надо или не надо... $STDIN = fopen('/dev/null', 'r'); $STDOUT = fopen('/dev/null', 'wb'); $STDERR = fopen('/dev/null', 'wb'); // Запускаем функцию несущую полезную нагрузку... $daemon->run($func);