測試環境:php7 + nginx +linux
首先去官網下載workerman:https://www.workerman.net/,建議使用composer 安裝php
新建一個模塊,因爲我這裏使用workerman來作自動任務的,因此我這個模塊的名稱爲:tasklinux
在controller文件夾裏面新建一個控制器:Worker.php,裏面的代碼以下nginx
<?php namespace app\task\controller; use think\worker\Server; use Workerman\Lib\Timer; class Worker extends Server { protected $socket = ''; protected $processes = 4;//四進程 protected $port = '2369';//監聽端口 /** * 每一個進程啓動 * @param $worker */ public function onWorkerStart($worker){ if ($worker->id === 0) { Timer::add(1,function(){ echo '這是進程0....'; }); }else if ($worker->id === 1) { Timer::add(1, function(){ echo '這是進程1.....'; }); }else if ($worker->id === 2) { Timer::add(1, function() { echo '這是進程2.進程2...'; }); }else if ($worker->id === 3) { Timer::add(1, function() { echo '進程3,這是進程3....'; }); } } }
添加一個入口文件worker.php,內容以下:thinkphp
<?php define('APP_PATH', __DIR__ . '/../app/'); define('BIND_MODULE','task/Worker'); // 加載框架引導文件 require __DIR__ . '/../thinkphp/start.php';
最後,用cli模式執行一下上面這個入口文件便可(window系統使用cmd)php7