Maison > cadre php > Workerman > le corps du texte

Comment utiliser Workman dans TP5

Libérer: 2019-12-23 10:35:02
original
4125 Les gens l'ont consulté

Comment utiliser Workman dans TP5

Basé sur le framework tp5, nous utilisons l'outil Composer pour télécharger Workererman

Installer Workererman :

Première installation

composer require topthink/think-worker -vvv
Copier après la connexion

via composer Créez server.php dans le répertoire racine de thinkphp5 (c'est-à-dire le répertoire au même niveau que l'application) et modifiez le contenu.

contenu du fichier server.php

define('APP_PATH', __DIR__ . '/application/');
define('BIND_MODULE','push/Worker');
// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';
Copier après la connexion

Ensuite, nous pouvons créer le contrôleur Worker du module push. Ce chemin doit être le même que le chemin de la ligne 3 de server.php. Worker.php est le suivant :

<?php
 
namespace app\push\controller;
 
use think\worker\Server;
 
class Worker extends Server
{
    protected $socket = &#39;websocket://127.0.0.1:2346&#39;;
 
    /**
     * 收到信息
     * @param $connection
     * @param $data
     */
    public function onMessage($connection, $data)
    {
        $connection->send(&#39;我收到你的信息了&#39;);
    }
 
    /**
     * 当连接建立时触发的回调函数
     * @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";
    }
 
    /**
     * 每个进程启动
     * @param $worker
     */
    public function onWorkerStart($worker)
    {
 
    }
}
Copier après la connexion

Exécutez server.php

commande : php server.php

Nouveau fichier html

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Title</title>
</head>
<body>
<script>
    ws = new WebSocket("ws://127.0.0.1:2346");
    ws.onopen = function() {
        alert("连接成功");
        ws.send(&#39;tom&#39;);
        alert("给服务端发送一个字符串:tom");
    };
    ws.onmessage = function(e) {
        alert("收到服务端的消息:" + e.data);
    };
</script>
</body>
</html>
Copier après la connexion

Pour plus de connaissances sur Workerman , veuillez suivre la colonne tutoriel ouvrier.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal