違い: 1. include はエラーが発生した場合、プロンプトを表示して実行を続行しますが、require はプログラムの実行を終了します。 2. require_once と include_once でインクルードされたファイルが既にインクルードされている場合、再度インクルードされませんが、include と require ではインクルードされます。
このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター
ファイルのインクルードとは、別のファイルをインクルードすることを指します。ソース ファイル すべての内容は現在のソース ファイルに含まれて使用されます。これは一般に外部ファイルの導入とも呼ばれます。外部ファイルを参照するとコードの再利用性が低下する可能性があり、これは PHP プログラミングの重要なスキルです。
PHP には、非常に単純ですが便利な 4 つの include ステートメント (include ステートメント、require ステートメント、include_once ステートメント、require_once ステートメント) が用意されています。これら 4 つのステートメントの使用には特定の違いがあります。それぞれについて以下で詳しく説明します。
1. include ステートメント
include ステートメントを使用して外部ファイルをインクルードする場合、外部ファイルはコードがインクルードされる場合にのみインクルードされます。 include ステートメントに対して実行されると、インクルードされた外部ファイルでエラーが発生すると、システムは警告を発し、PHP プログラム全体が実行を継続します。
include ステートメントの構文形式は次のとおりです。
include('filename') 或者 include 'filename'
ここで、filename はインクルードするファイル パス (相対パスと絶対パスの両方を使用できます)、filename は文字列であるため、単一です。引用符は必須です。' ' または二重引用符 " " で囲みます。同時に、include の後の括弧も省略できますが、括弧を省略する場合は、include と次のファイル名をスペースで区切る必要があります。
デモンストレーションの便宜上、ここでは以下に示すように、demo.php ファイルを準備し、その中に $str 変数を定義します。
<?php $str = 'https://www.php.cn/'; ?>
[例] include ステートメントを使用してインクルードします。デモ .php ファイルのコードは次のとおりです:
<?php include './demo.php'; echo $str; ?>
実行結果は次のとおりです:
https://www.php.cn/
2. require ステートメント
require ステートメントの使用法は include ステートメントと似ており、どちらも外部ファイルへの参照を実装します。 PHP ファイルが実行される前に、PHP パーサーは require ステートメントを参照ファイルの内容全体で置き換え、次に require ステートメントを除く他のステートメントを含む新しい PHP ファイルを形成し、最後に新しい PHP ファイルに従ってプログラム コードを実行します。 。
注: require ステートメントは、別のソース ファイルの内容をこのファイルに完全にコピーすることと同じであるため、通常、このステートメントはソース ファイルの先頭に配置され、パブリック関数ファイルおよび必要なファイルを参照します。公開クラスファイルなど
require ステートメントは include ステートメントとほぼ同じです。違いは、インクルードされたファイルが存在しないかエラーがある場合、require ステートメントは致命的エラーを発行してプログラムの実行を終了するのに対し、require ステートメントは include ステートメントとほぼ同じです。 include ステートメントは Warning 警告を発行しますが、プログラムは下向きに実行を続けます。
require ステートメントの構文形式は次のとおりです。
require(filename) 或者 require 'filename'
パラメータ ファイル名はインクルードするファイルのパスであり、その特性は include ステートメントのパラメータと同じです。
[例] 上記で定義したdemo.phpファイルをrequire文でインクルードするコードは次のとおりです:
<?php require './demo.php'; echo $str; ?>
実行結果は次のとおりです:
https://www.php.cn/
3. include_once ステートメント
include_once ステートメントは include ステートメントと似ていますが、唯一の違いは、インクルードされたファイルが既にインクルードされている場合はインクルードされないことです。再び含まれています。 include_once を使用すると、関数の再定義や変数の再割り当てなどの問題を回避するために、スクリプトの実行中に同じファイルが 1 回だけインクルードされるようにできます。
上記で定義したdemo.phpファイルを次のように調整してみましょう:
<?php echo 'PHP中文网<br>'; echo 'https://www.php.cn/'; ?>
[例] include_onceステートメントを使用してdemo.phpファイルをインクルードします。コードは次のとおりです:
<?php include_once './demo.php'; include_once './demo.php'; include_once './demo.php'; ?>
実行結果は次のとおりです:
PHP中文网 https://www.php.cn/
4. require_once ステートメント
require_once ステートメントは require ステートメントの拡張です。関数は require と同じです ステートメントは基本的に似ています。違いは、require_once ステートメントを適用するときに、インクルードされるファイルがプログラム内の他の場所にインクルードされているかどうかを最初にチェックすることです。インクルードされている場合、そのファイルは再度インクルードされません。 。
[例] require_once ステートメントを使用して、demo.php ファイルをインクルードします。コードは次のとおりです:
<?php require_once './demo.php'; require_once './demo.php'; require_once './demo.php'; ?>
実行結果は次のとおりです:
PHP中文网 https://www.php.cn/
推奨学習: "PHP ビデオ チュートリアル >>
以上がPHP のいくつかのインクルード ファイル関数の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。