• +86 18940128339
  • 3056844889@qq.com

标签归档tp

TP框架 搭建socket

composer切换到国内阿里镜像 执行

 composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

进入到thinkphp项目的根目录下 执行

composer update

安装workerman 执行

composer require topthink/think-worker dev-master

如果要在win下做服务,继续执行

composer  require  workerman/workerman-for-win

在根目录创建Worker.php作为启动服务文件

#! /usr/bin/env php
<?php
define('APP_PATH',__DIR__ .'/application');
define('BIND_MODULE','push/Worker');
// //加载框架引导文件
require __DIR__. '/thinkphp/start.php';

创建push模块Worker控制器作为服务处理类

<?php
namespace app\push\controller;

use think\worker\Server;

class Worker extends Server{

    protected $socket = 'websocket://0.0.0.0:6001';
    /**
     * 收到消息
     * @param $connection
     * @param $data
     */
    public function onMesssage($connection,$data){
        $connection->send('我收到你的信息了');
    }

    /**
     * 当连接被建立时触发的回调函数
     * @param $connection
     */
    public function onConnect($connection){
        
    }
    /**
     * 当连接断开时触发的回调函数
     * @param $connection
     */
    public function onClose($connection){
        
    }
    /**
     * 当客户端的连接发生错误时触发
     * @param $connection
     * @param $code
     * @param $msg
     */
    public function onError($connection,$code,$msg){
        echo "error : $code  $msg \n";
    }
}

安装think-worker 1.0.*版本

composer require topthink/think-worker 1.0.*

返回到项目根目录 执行

 php Worker.php start -d

打开Chrome 浏览器,在console(控制器)里键入