ホームページ >バックエンド開発 >PHPチュートリアル >閉じられていないphpタグでは何が起こっているのでしょうか?

閉じられていないphpタグでは何が起こっているのでしょうか?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-17 08:31:081146ブラウズ

一般的な PHP ドキュメントでは、PHP タグは の形式で表示されることはわかっています。ただし、一部のオープン ソース システムでは、ファイル内に 部分がない場合もあります。そして、?> が他のファイルにないように感じます。なぜこのように書けるのか、またその意味を教えてください。

返信内容:

まず、マニュアルの元のテキストのセクションを抜粋します。ファイルの内容が純粋な PHP コードである場合は、ファイルの末尾にある PHP を削除するのが最善です。 終了タグ。これにより、PHP 終了タグの後に誤ってスペースや改行を追加してしまう問題が回避されます。 現時点でスクリプト内でこれらの空白を出力する意図がない場合、PHP はこれらの空白の出力を開始します。
これらの影響が最も発生しやすいのは、include と require を使用するときです。終了タグを追加し、その後にスペースを追加すると、冗長な出力が発生したり、PHP エラーが発生したり、後続の出力が表示されなくなったりする可能性があります。空白のページ。したがって、すべての PHP ファイルでは、 PHP 終了タグを省略し、これがファイルの最後であることを示すコメントを挿入し、アプリケーションに関連してファイルを配置する必要があります。これは、ファイルが終了し、削除されていないことを確認するのに役立ちます。 header、setcookie など、呼び出される前に出力を持たない一部の関数では、?> で終わる PHP ファイルがこれらの関数の前にロードされ、同時に、誤って末尾の後に改行を追加すると、 ?> など。これらの空白文字は、?> の外側に配置されるため、PHP では無視されません。この場合、ファイルがロードされると、それらは出力として扱われます。ヘッダーや他の関数が呼び出される前に PHP エラーが発生します。終わりがない場合、PHP 構文は空白を無視し、エラーは発生しません。
<code class="language-text">第一,文件末尾的 ?>可以省略
第二,该脚本若被其他脚本包含,所以该脚本不需要结束,否则会报错,因为是要和其他脚本衔接,只有在php代码后面需要写html的才使用闭合标签。
</code>
上の階の正しい答えは、php コードの後に​​ html を記述する必要がある場合にのみ終了タグを使用することです。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。