首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP ratchet/pawl返回数据而不是打印

PHP ratchet/pawl返回数据而不是打印
EN

Stack Overflow用户
提问于 2020-10-27 04:38:54
回答 1查看 49关注 0票数 0

下面的脚本只允许打印数据而不是返回( $msg ),我已经将它嵌入到一个控制器函数中,但无法返回响应

代码语言:javascript
复制
<?php

    require __DIR__ . '/vendor/autoload.php';

    \Ratchet\Client\connect('wss://echo.websocket.org:443')->then(function($conn) {
        $conn->on('message', function($msg) use ($conn) {
            echo "Received: {$msg}\n"; // NEED TO RETURN THIS INSTEAD OF PRINTING
            $conn->close();
        });

        $conn->send('Hello World!');
    }, function ($e) {
        echo "Could not connect: {$e->getMessage()}\n";
    });
EN

回答 1

Stack Overflow用户

发布于 2020-10-27 04:48:41

这应该是可行的。

代码语言:javascript
复制
<?php
$message = null;
\Ratchet\Client\connect('wss://echo.websocket.org:443')->then(function($conn) use (&$message) {
     $conn->on('message', function($msg) use ($conn, &$message) {
        $conn->close();
        $message = "Received: {$msg}\n";
     });
     $conn->send('Hello World!');
}, function ($e) use (&$message) {
     $message = "Could not connect: {$e->getMessage()}\n";
});
echo $message;
代码语言:javascript
复制
$message = "old message";
(function() use (&$message) {
    (function() use(&$message) {
        $message = "new message";
    })();
})();
echo $message; // returns "new message"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64544653

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档