測試環境:php7 + nginx +linux
首先去官網下載workerman:https://www.workerman.net/,建議使用composer 安裝
新建一個模塊,由於我這里使用workerman來做自動任務的,所以我這個模塊的名稱為:task

在controller文件夾里面新建一個控制器:Worker.php,里面的代碼如下
<?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,內容如下:
<?php
define('APP_PATH', __DIR__ . '/../app/');
define('BIND_MODULE','task/Worker');
// 加載框架引導文件
require __DIR__ . '/../thinkphp/start.php';
最后,用cli模式執行一下上面這個入口文件即可(window系統使用cmd)
