ThinkPHP3.2版本没有默认添加Workerman,我们可以自己添加类库的方式进行添加,首先现在Workerman最新版
下载地址:https://www.workerman.net/download/workermanzip
现在后解压,将内容复制到 ThinkPHP/Library/Vendor 目录下的Workerman 文件夹中,在文件夹中 新建 Workerman.class.php 文件,将原来的Worker.php 与 Autoloader.php 合并到 Workerman.class.php 文件中,两个文件最顶部都有
namespace Workerman;
删除其中的一个,不如会出错
在Home模块或新建一个模块添加控制器
<?php
namespace HomeController;
use WorkermanWorker;class WorkermanController extends HomeController {
public function index() {
import ( “Vendor.Workerman.Workerman” );if (! IS_CLI) {
die ( “请在命令行中启动……” );
}$worker = new Worker ( ‘websocket://0.0.0.0:2345’, $context );
$worker->onMessage = function ($conn, $msg) {
$conn->send ( ‘ok’ );
};Worker::runAll ();
}
}
新建入口文件 cli.php
<?php
if(version_compare(PHP_VERSION,’5.3.0′,'<‘)) die(‘require PHP > 5.3.0 !’);
/**
* 系统调试设置
* 项目正式部署后请设置为false
*/
define ( ‘APP_DEBUG’, true );define(‘BIND_MODULE’,’Home’);
/**
* 应用目录设置
* 安全期间,建议安装调试完成后移动到非WEB目录
*/
define ( ‘APP_PATH’, dirname(__FILE__).’/Application/’ );$_GET[‘s’] = ‘Workerman/index’; // 绑定Home模块到当前入口文件
/**
* 引入核心入口
* ThinkPHP亦可移动到WEB以外的目录
*/
require dirname(__FILE__).’/ThinkPHP/ThinkPHP.php’;
在命令行输入 php cli.php start 检查 是否运行,出现下图这样说明配置成功,如果出现错误,请检查 php是否能执行,文件目录是否正确
原创文章,作者:admin,如若转载,请注明出处:https://ntib.cn/124.html