php实现简单的守护进程创建、开启与关闭操作
2019-08-13 08:37
1061 查看
本文实例讲述了php实现简单的守护进程创建、开启与关闭操作。分享给大家供大家参考,具体如下:
前提要安装有pcntl扩展,可通过php -m
查看是否安装
<?php class Daemon { private $pidfile; function __construct() { $this->pidfile = dirname(__FILE__).'/daemontest.pid'; } private function startDeamon() { if (file_exists($this->pidfile)) { echo "The file $this->pidfile exists.\n"; exit(); } $pid = pcntl_fork(); if ($pid == -1) { die('could not fork'); } else if ($pid) { echo 'start ok'; exit($pid); } else { // we are the child file_put_contents($this->pidfile, getmypid()); return getmypid(); } } private function start(){ $pid = $this->startDeamon(); while (true) { file_put_contents(dirname(__FILE__).'/test.txt', date('Y-m-d H:i:s'), FILE_APPEND); sleep(2); } } private function stop(){ if (file_exists($this->pidfile)) { $pid = file_get_contents($this->pidfile); posix_kill($pid, 9); unlink($this->pidfile); } } public function run($argv) { if($argv[1] == 'start') { $this->start(); }else if($argv[1] == 'stop') { $this->stop(); }else{ echo 'param error'; } } } $deamon = new Daemon(); $deamon->run($argv);
启动
php deamon.php start
关闭
php deamon.php stop
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP进程与线程操作技巧总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- PHP实现多进程并行操作(可做守护进程)
- php实现简单的守护进程
- 守护进程(简单实现)--程序关闭后自动启动
- PHP实现多进程并行操作的详解(可做守护进程)
- php守护进程 加linux命令nohup实现任务每秒执行一次
- php操作Mysql简单介绍:连接mysql|打开数据库|查询|关闭mysql
- 用PHP实现守护进程任务后台运行与多线程(php-resque使用说明)
- php守护进程,加linux命令nohup实现任务每秒执行一次
- 基于php和mysql的简单的dao类实现crud操作功能
- Linux下一个简单守护进程的实现 (Daemon)
- 用php实现一个简单的链式操作
- 守护进程的最简单实现方法
- java代码实现开启openoffice服务和关闭sffice.exe进程
- (C语言版)链表(三)——实现双向链表创建、删除、插入、释放内存等简单操作
- php 创建守护进程
- APP中一种在Java层实现的简单守护进程方式
- Windows守护进程的一种简单实现
- Java入门到精通——基础篇之多线程实现简单的PV操作的进程同步
- 实现一个简单的php操作SQLite的类
- 守护进程C实现简单分析