问题标签 [reactphp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2597 浏览

php - PHP中的多个函数异步调用

我正在使用 Symfony 3 和ReactPHP库来控制我的所有功能,并且我需要异步subFunction()执行对同一函数(在代码中)的多次调用。我有 2 个项目(project1 和 project2):

项目1代码:

项目2代码:

问题是,在每次subFunction($url)调用时,程序都会停止,直到子函数得到响应,但我需要异步执行此操作,因为此子函数可能需要很多秒。所以我想同时启动所有subFunction($url)调用,并异步获取所有响应。

有可能解决这个问题吗?谢谢。

0 投票
1 回答
1200 浏览

ssl - 将 Ratchet WsServer 与 React SecureServer (WSS / SSL) 结合使用

我们正在尝试通过安全连接 (WSS) 实现 websockets,并在我们的项目中实现了 cboden/ratchet。一切正常,正常连接。查看文档和 Github 项目页面,似乎新的 React SecureServer 类尚未在 Ratchet 中实现。

在问题中,我们找到了一篇关于它的帖子,直到以后的版本才会支持它,但是,我们现在需要它:D 在问题报告中,他们建议将新的 React SecureServer 类与 Ratchet 类结合使用。我们尝试了并得到一个致命错误:

Catchable fatal error: Argument 1 passed to React\Socket\SecureServer::__construct() must be an instance of React\Socket\Server, instance of Ratchet\Http\HttpServer given.

出错的部分:

我们在做傻事吗?:p

0 投票
2 回答
402 浏览

php - React SecureServer 运行但在浏览器中抛出 SSL_ERROR_NO_CYPHER_OVERLAP

我们已经设置了一个安全套接字服务器,它在使用 SecureServer 保护它之前就已经工作了。运行 php 脚本成功,但尝试从应用程序连接时,浏览器会抛出 SSL_ERROR_NO_CYPHER_OVERLAP 错误。

可能我们的 php 脚本有问题。有人知道如何解决这个问题吗?

我们有的代码:

一些文章建议摆弄浏览器配置,但所有访问者都应该可以使用连接..(没有摆弄)


编辑:我们在错误的地方使用了 SecureServer,用更正的代码添加了答案。

0 投票
1 回答
1770 浏览

laravel - ReactPHP - 使用 Laravel 和计时器

所以这是我遇到的一个非常有趣的问题。我一心想弄清楚如何将 websocket 客户端集成到 Laravel 5.5 中,以允许在我的应用程序和Discord Gateway之间通过 websocket 进行通信。我通过 Composer 构建了一个新的 Laravel 应用程序并需要这个,它构建在Ratchet PHP之上。

我正在尝试在我使用的这个机器人之后构建一个 PHP Discord Bot,但在它使用的主要依赖项也被终止后被放弃。

我已经想出了如何添加一个计时器来发送这样的心跳

在我的应用程序收到来自 Discord 的事件之前,这非常有效。然后同步丢失,而不是以hello 事件的确定间隔发送心跳,我的应用程序开始每 3-9 秒发送一次,有时一次发送 2 或 3 个。这是出于调试原因从控制台输出的一些输出,但它显示了我的问题:

这是代码:

有没有人知道可以更好地管理心跳,或者这只是我需要忍受的事情?

另外,有人对我的做法有什么建议或批评吗?我找不到任何关于如何执行此操作的可靠文档,所以我在进行过程中将其拼凑起来。

0 投票
2 回答
614 浏览

php - 如何在 Laravel 中包含模块

我正在尝试在 Laravel 5.5 安装中使用 ReactPHP。在非 laravel 项目中它工作正常。我已将此库复制到

我要加载的课程是DOCUMENT_ROOT/vendor/react/event-loop/src/Factory.php

我使用的是绝对引用而不是命名空间——所以在我使用 React 的类中,我有:

Laravel 抱怨:

找不到类 'React\EventLoop\Factory'

我怎样才能加载它,该vendor目录是放置它的正确位置吗?

0 投票
1 回答
368 浏览

php - 如何使用棘轮发送特定套接字连接的事件

首先看这段代码:

此代码接受套接字连接并将它们存储在 $connections 中。

认为当客户端打开套接字时,他们会向服务器发送哈希码以进行识别。因此,如果我有 1000 个连接到我的服务器,并且我想从另一个单独运行的 php 代码中向其中一些连接发送消息。我怎样才能做到这一点。如何访问连接列表?我如何识别谁是谁?

0 投票
2 回答
4821 浏览

asynchronous - Guzzle vs ReactPHP vs Amphp 用于并行请求

有什么区别:

它们有何不同以及使用的典型用例是什么?

0 投票
3 回答
169 浏览

monitor - ReactPhp:创建无限循环以检查 sysfs 修改

我想用来监控 sysfs GPIO 输入(/sys/class/gpio)。但是当我作为示例测试给定代码时,脚本在$loop->run().

我怎样才能使这个循环永久化(无尽的)?

0 投票
1 回答
532 浏览

php - 如何在reactphp上自动重新连接客户端?

我正在使用 reactphp 为 api 服务器创建客户端。但是我有一个问题,当我的连接关闭时,无论什么原因,我都无法自动重新连接。

它不起作用:

异常为空。

0 投票
1 回答
948 浏览

php - 无法在 React PHP 中进行非阻塞 I/O

我正在尝试在数据库中插入一条记录到反应套接字服务器。我不知道如何以非阻塞方式进行操作

write数据库中的方法在sleep(10)执行 sql 语句之前有几秒钟的时间。所以我期待下一条消息I am supposed to..应该立即打印出来。

我的期望是,当有 I/O 操作时,该操作将被移动到事件表并且不会阻塞调用堆栈。根据事件循环和非阻塞的定义。

如何以非阻塞方式执行相同的操作。

谢谢