php ファイルをインクルードするいくつかの方法

王林
リリース: 2023-02-24 12:08:01
オリジナル
4397 人が閲覧しました

php ファイルをインクルードするいくつかの方法

4 種類のステートメント

PHP でファイルをロードするための 4 つのステートメントがあります: includerequire include_oncerequire_once

基本構文

require: require 関数は通常、PHP スクリプトの先頭に配置されます。PHP が実行される前に、最初に指定されたファイルが読み込まれます。 require、include、try インポートしたスクリプト ファイルを実行します。 require の仕組みは PHP の実行効率を高めるためのもので、同じ Web ページ内で一度解釈されると、2 回目は解釈されなくなります。ただし、同様に、インポートされたファイルを繰り返し解釈しないため、PHP でファイルを導入するためにループまたは条件ステートメントを使用する場合は include を使用する必要があります。

include: PHP スクリプト内のどこにでも (通常はプロセス コントロールの処理部分に) 配置できます。 include で指定したファイルに対して PHP スクリプトを実行すると、インクルードされて実行が試行されます。この方法により、プログラムの実行プロセスを簡略化できます。同じファイルに 2 回目に遭遇した場合でも、PHP は再度それを再解釈します。 include の実行効率は、require の実行効率よりもはるかに低くなります。同時に、インポートされたファイルにユーザー定義関数が含まれている場合、 PHP では、解釈プロセス中に関数定義が繰り返されるという問題が発生します。

require_once / include_once: それぞれ require / include と同じ効果があります。違いは、これらが実行されるときに、ターゲット コンテンツが以前にインポートされているかどうかを最初にチェックすることです。がインポートされると、同じコンテンツが再び再導入されることはありません。

include と require の違い:

include には戻り値がありますが、require には戻り値がありません。

include は、ファイルのロードが失敗すると警告 (E_WARNING) を生成し、エラー発生後もスクリプトは実行を継続します。そのため、実行を継続して結果をユーザーに出力したい場合には include を使用します。

//test1.php
<?php
include &#39;./tsest.php&#39;;
echo &#39;this is test1&#39;;
?>

//test2.php
<?php
echo &#39;this is test2\n&#39;;
function test() {
    echo &#39;this is test\n&#39;;
}
?>

//结果:
this is test1
ログイン後にコピー

require は、読み込みが失敗すると致命的エラー (E_COMPILE_ERROR) を生成し、エラー発生後にスクリプトの実行が停止します。通常、後続のコードがロードされたファイルに依存する場合に使用されます。

//test1.php
<?php
require &#39;./tsest.php&#39;;
echo &#39;this is test1&#39;;
?>

//test2.php
<?php
echo &#39;this is test2\n&#39;;
function test() {
    echo &#39;this is test\n&#39;;
}
?>
ログイン後にコピー
結果:


#include および include_once: php ファイルをインクルードするいくつかの方法

include 読み込んだファイルは重複かどうかの判定は行わず、include 文がある限り一度だけ読み込まれます(繰り返し読み込まれても構いません)。 include_once がファイルをロードするとき、前のコードがロードされているかどうかを判断する内部判断メカニズムが存在します。ここで注意する必要があるのは、include_once はファイルの内容ではなく、同じパスのファイルが以前にインポートされているかどうかに基づいて判断されることです (つまり、インポートされる 2 つのファイルの内容が同じです)。 、 include_once を使用すると、依然として 2 つが導入されます)。

//test1.php
<?php
include &#39;./test2.php&#39;;
echo &#39;this is test1&#39;;
include &#39;./test2.php&#39;;
?>

//test2.php
<?php
echo &#39;this is test2&#39;;
?>

//结果:
this is test2this is test1this is test2


//test1.php
<?php
include &#39;./test2.php&#39;;
echo &#39;this is test1&#39;;
include_once &#39;./test2.php&#39;;
?>

//test2.php
<?php
echo &#39;this is test2&#39;;
?>

//结果:
this is test2this is test1


//test1.php
<?php
include_once &#39;./test2.php&#39;;
echo &#39;this is test1&#39;;
include &#39;./test2.php&#39;;
?>

//test2.php
<?php
echo &#39;this is test2&#39;;
?>

//结果:
this is test2this is test1this is test2


//test1.php
<?php
include_once &#39;./test2.php&#39;;
echo &#39;this is test1&#39;;
include_once &#39;./test2.php&#39;;
?>

//test2.php
<?php
echo &#39;this is test2&#39;;
?>

//结果:
this is test2this is test1
ログイン後にコピー

require と require_once: include と include_once と同じ違いです。

推奨チュートリアル: PHP ビデオ チュートリアル

以上がphp ファイルをインクルードするいくつかの方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート