phpsocket.io

班建义
2023-12-01


<?php
require_once __DIR__ . '/Workerman/Autoloader.php';
use Workerman\Worker;
use PHPSocketIO\SocketIO;


// 创建socket.io服务端,监听2021端口
$io = new SocketIO(3120);
// 当有客户端连接时打印一行文字
$io->on('connection', function($socket)use($io){
    // 定义chat message事件回调函数
    $socket->on('chat message', function($msg)use($io){
        // 触发所有客户端定义的chat message from server事件
        for ($i=0;$i<10;$i++){
            $io->emit('chat message from server', $msg);
            sleep(1);
        }


    });
});


Worker::runAll();
?>


<!DOCTYPE html>

<html>
<head>
    <title>HTML5</title>
    <meta charset="utf-8" />
    <script src="./jquery.1.11.3.min.js"></script>
    <script src="./socket.io.js"></script>
    <script>
        // 连接服务端
        var socket = io('http://127.0.0.1:3120');
        // 触发服务端的chat message事件
        socket.emit('chat message', '这个是消息内容...');
        // 服务端通过emit('chat message from server', $msg)触发客户端的chat message from server事件
        socket.on('chat message from server', function(msg){
            console.log('get message:' + msg + ' from server');
        });
    </script>


</head>
<body>
</body>

</html>

http协议始终是不会主动推送的,所以无法实现实时现实后台程序运行的进度。


 类似资料:

相关阅读

相关文章

相关问答