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: " を付けます。
1つのメッセージを1つずつ印刷するにはどうすればよいですか?
PS: "\r"、"\n"、"\n\r"、または "\r\n" を使用しようとしましたが、何も機能しません :/.
助けが必要です、どうもありがとう。
編集:コンテキストの追加