37

PHP 終了タグで興味深い現象が発生しました。Ajax 呼び出しによって実行される php ファイルがありました。php ファイルには、さまざまな機能を備えた php ライブラリ ファイルが含まれていました。このライブラリが含まれていると、php の応答に多数の空白行が含まれていました。ライブラリから終了タグを削除すると、これは発生しなくなりました。ここで何が起こっているのか誰か説明してもらえますか?

4

2 に答える 2

63

これは十分に文書化されています。PHPマニュアルから:

ファイルの末尾にある PHP ブロックの終了タグはオプションであり、include() や require() を使用する場合は省略しておくと便利な場合があるため、ファイルの末尾に不要な空白が発生することはありません。後で応答にヘッダーを追加できます。また、出力バッファリングを使用していて、インクルード ファイルによって生成された部分の末尾に不要な空白が追加されたくない場合にも便利です。

終了タグを省略すると、誤って空白や改行がファイルの末尾に追加されるのを防ぐことができます。

于 2013-11-13T12:14:55.597 に答える