1

次のような状況を想像してみましょう。

<?php
session_start();
someFunction();
?>

<html>
<head>The headers...</head>
<body>Loooooots of content</body>
</html>

<?
executeSomething();
?>

クライアントとの接続が遅く、そのHTML部分が大きいため転送に時間がかかる場合、転送が完了するexecuteSomething();まで 2 番目の PHP ブロックがハングしますか?HTML

4

1 に答える 1

1

いいえ。PHP プロセッサは HTML ファイルのすべての php 部分を実行し、完了した後にのみ完全な HTML データをユーザーに送信し始めます。

ただし、必要に応じて、PHP プロセッサがob_flush()を使用して PHP を処理している間に、HTML データを送信することもできます。その後、制限時間に達するまでスクリプトが実行されます。

使用ob_flush()するには、最初に初期化する必要があります: ob_start()。次に、目的の関数を使用して、バッファリングされたデータをユーザーに送信できob_ます。

于 2013-08-19T13:27:34.213 に答える