0

我正在尝试使用 PHP 读取流数据。

所以我想实时阅读并显示从服务器发布的每条消息。

我假设代码中的 $uri, $context 是正确定义的。

当我使用此代码时,我得到的唯一结果是达到长度。它接缝它不会在分隔符“\r”字符串上停止。

DEFINE('TOKEN', "MY_TOKEN");

$opts = array(
  'http' => array(
    'method' => "GET",
    'header'=> "Authorization: Basic " . base64_encode(TOKEN)));
$context = stream_context_create($opts);
if (($fp = fopen($uri, "r", false, $context))) {
  while (!feof($fp)) {
    $contents = stream_get_line($fp, 1024, "\r");
    echo "text: " . $contents . "\n";
  }
fclose($fp);

当达到长度时,它会正确显示所有发布的新消息。在每条消息之前使用字符串“text:”。

我该怎么做才能逐条打印一条消息?

PS:我尝试使用“\r”、“\n”、“\n\r”或“\r\n”,没有任何效果:/。

我需要一些帮助,非常感谢。

编辑:添加上下文

4

0 回答 0