所以我有一个 PHP 文件,它会随机接收来自第三方的新发布数据。为了简单起见,我们称它为get_data.php
如下所示:
<?php
$data = $_REQUEST;
// Data processing
然后我有一个单独的脚本,stream.php
它使用 HTML5服务器发送事件将数据流式传输到(JS)客户端:
<?php
header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');
while (true) {
echo 'data: ' . $data . PHP_EOL;
echo PHP_EOL;
ob_flush();
flush();
sleep(1);
}
每个脚本本身都运行良好。但是,我需要将$data
第一个脚本传递给第二个脚本。
我知道我可以通过将变量存储在数据库或临时文件中来实现这一点,但理想情况下我可以单独通过 PHP 来做到这一点。
在另一个文件中包含一个文件看起来也不是一个好选择,因为流标头很可能会与第三方发布数据时发生冲突,我希望将数据处理与流分开,以防万一后者崩溃。
注意- 这与其他询问如何在网页上的 PHP 脚本之间传递数据的问题不重复,因为我似乎无法使用$_SESSION
变量,因为数据是由与访问事件流的用户不同的第三方发布的。