問題タブ [output-buffering]
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.
php - PHP ob_start() の質問
ある場合、1つob_start();
を終了して別のファイルを開始する適切な方法は何ob_start();
ですか?
php - すべての PHP ページに ob_start() をプレフィックスとして付ける必要性
ob_start()
すべての PHP ページの先頭に配置しても問題ありませんか?
これを行わないと、「ヘッダーは既に送信されました」というエラーが表示されます。
php - flush() PHP で出力が表示されませんか?
私はこのコードを持っています:
このページを表示したときにやりたいことは、次のように、スクリプトが実行されている時間をリアルタイムで確認することです。
- スクリプトは 1 秒間実行されています。
- スクリプトは 2 秒間実行されています。
- …………
- スクリプトは 300 秒間実行されています。
代わりに、5分間連続して「読み込み中」のサインが表示された空白のウィンドウが表示され、5分後に突然、一度に1つのメッセージを受け取るべきだったこれらのメッセージが大量に殺到します。
誰かが私が間違っていることを説明できますか?
php - PHPバッファの理由\r\ n
コメントで、次のスクリプトに関していくつかの概念的な質問があります(すべて関連していると思います)。スクリプトは正常に機能します。
まず、なぜ\r\n<tag>\r\n
ブラウザに送信する必要があるのですか?ヘッダーと関係があると思います。
次に、なぜ途中でHTMLが必要なのですか?
第三に、4096ではなく256バイトを使用する例がたくさんあります。ただし、256を使用するとスクリプトが機能しません。これらの例は古くなっていますか?この数は将来再び変更されますか?
//ソースリンクに関する編集
このコードは、主にphp.netsleep()
関数の解説とこのSO質問の解決策から収集されました。どちらも、を含める理由については言及していません\r\n
。
//ヘッダーに関する編集
\r\n
、HTMLタグ、および2番目のセットを追加しないと\r\n
、スクリプトはChromeまたはSafariで正しく実行されません(すべての値を一度にダンプするだけです)。
さらに、これがの前に呼び出されると、session_start()
「セッションキャッシュリミッターを送信できません-ヘッダーはすでに送信されています」というエラーがスローされます。
php - PHPバッファーob_flush()とflush()
ob_flush()
との違いは何flush()
ですか?なぜ両方を呼び出さなければならないのですか?
ob_flush()
参照は言う:
この関数は、出力バッファーの内容(存在する場合)を送信します。
flush()
参照は言う:
PHPおよびPHPが使用しているバックエンド(CGI、Webサーバーなど)の書き込みバッファーをフラッシュします。
しかし、それは言い続けます:
[それは]あなたのウェブサーバーのバッファリングスキームを無効にすることができないかもしれません…</p>
だから、私はいつも使うことができたように思えob_flush()
ます。しかし、そうすると奇妙な結果になります。誰かがここで何が起こっているのか簡単に説明できますか?
c++ - ブースト: 標準出力、標準エラーのすべてを制御できるようにスレッドを作成する方法は?
C++ で win32 コンソール アプリを作成します。私はいくつかの API を使用しています (私のものではなく、そのソースを変更することはできません)。コンソール画面に情報の一部を要求せずに書き込むように書かれています...呼び出すたびに(1秒あたり48回)、それをスレッドに入れて出力機能を制限したいのですが、取得する必要がありますそのスレッドが私にとって重要なメッセージを出力しようとすると通知されます。標準文字列のメッセージ テキストがあります。ブーストを使用してC ++でそのようなことを行う方法は?
php - PHPでのob_start()の使用は何ですか?
ヘッダーがバッファリングされ、ブラウザに送信されないようにするためにob_start()
使用されますか? output buffering
私はここで理にかなっていますか?そうでない場合、なぜ使用する必要があるのob_start()
でしょうか?
php - PHPフラッシュ/ob_flushが機能しない
フラッシュとob_flushを機能させるためにいくつかの試みを試みました。バッファリングを許可するように ini を設定しようとしました。出力バッファリングのためにオンラインで見つけたいくつかの異なる関数を使用してみましたが、どれもまったく機能していません。スクリプトは、出力がエコーされるまで、完全に完了するまで待機したいと考えています。ここに私がこれまでに持っているスクリプトがあります
私はそれが何をしているのかをエコーし てから、関数を実行し、次に何か他のことをエコーし、次に別の機能を実行したいと考えています。ブラウザ上ですべてのバッファをリアルタイムでフラッシュしてエコーする必要があります。
php - 出力バッファとdie()/ exit()関数?
皆さんの休日が順調に進んでいることを願っています。
ここに別のPHP関連の質問があります。スクリプトで出力バッファーを使用しています。最近学んだことは無効な理由です(スクリプトの後半でヘッダーを渡すことができます)。スクリプトの最後で出力バッファーを使用する代わりに出力する準備ができるまで、すべての出力を変数または他の種類のストレージに格納する必要があることに気付きました。残念ながら、私はすでにこれらの関数とhtmlの自発的な出力を私のページにコーディングしています。このバージョンに対応するための厳しい期限があるため、スクリプトのバージョン2でこの問題を修正できることを望んでいました。
手元の質問に。私はこれを行うことを計画していましたが、どうやらdie()関数とexit()関数は出力バッファーではうまく機能しませんか?すべてのエラーメッセージの後にexit()があり、その時点で実行を終了する代わりに、出力バッファのためにスクリプトが続行しているようです。出力バッファーを削除してこの仮説をテストしました。exit()関数は期待どおりに機能します。
この動作を変更する方法はありますか、それとも製図板に戻って古いページの置き換えを開始する必要がありますか?また、なぜ最後まで出力を維持する必要があるのか、誰かに説明してもらえますか?私はいつも学びに興味があります。
みなさん、よろしくお願いします!2010年の最後の数日間をお楽しみください!
php - 最後まで出力を保存するのはなぜですか?
ここでのプログラミングの実践に関する非常に簡単な質問:
HTMLコードが生成されるとすぐにecho()を使用してユーザーに出力し、同時にob_start()を使用してコードの後半でヘッダーを出力できるようにしました。最近、これは悪いプログラミング手法であり、最後まで HTML 出力を保存する必要があることに気付きました。
これには理由がありますか?それは何ですか?出力バッファリングが良い代替手段ではないのはなぜですか?
ありがとう!