ホームページ > バックエンド開発 > PHPチュートリアル > include と require の違いについては、PHP_PHP チュートリアルで詳しく説明しています。

include と require の違いについては、PHP_PHP チュートリアルで詳しく説明しています。

WBOY
リリース: 2016-07-13 10:25:56
オリジナル
869 人が閲覧しました

PHP プログラミングでは、include() と require() は同じ関数を持ちます。 include(include_once) と require(require_once) はどちらも、インクルードされたファイルのコードを指定された場所に読み込みますが、使用方法には違いがあります。は条件付き包含関数、require()は無条件包含関数です)

1、様々な使用方法

(1) requireの使用方法はrequire("requireFile.php");のようなものです。この関数は通常、PHP プログラムの先頭に配置され、PHP プログラムが実行される前に、まず require で指定されたファイルを読み取り、それを PHP プログラムの Web ページの一部にします。このようにして、よく使われる機能を Web ページに導入することもできます。導入は無条件であり、条件が true であるかどうかに関係なく、プログラムの実行前にインポートされます (実行されない場合もあります)。
(2) include は include("includeFile.php"); のように使用されます。この機能は通常、フロー制御の処理部に配置されます。 PHP プログラムの Web ページは、インクルード ファイルを読み取るときのみ読み取ります。これにより、プログラムの実行処理を簡略化することができる。導入は条件付きであり、プログラムの実行時に発生します (これにより、コンパイルによって生成されるコードが簡素化されます)。

たとえば、次の例では、変数 $somgthing が true の場合、ファイル somefile がインクルードされます:

コードをコピーします コードは次のとおりです:

if($something){
include("somefile");
}

しかし、$somethingの値が何であっても、次はコードにはファイル somefile が含まれます ファイル内:
コードをコピーします コードは次のとおりです:

if($something){
require("somefile");
}

次の興味深いものですこの例は、これら 2 つの関数の違いを完全に示しています。
コードをコピー コードは次のとおりです:

$i = 1;
while ($i < 3) {
require("somefile.$i");
$i++;
}

at このコードでは、プログラムはループするたびに同じファイルをインクルードします。明らかに、これはプログラマーの本来の意図ではありません。コードから、このコードが各ループに異なるファイルを含めることを望んでいることがわかります。この関数を完了したい場合は、関数 include() を使用する必要があります:
コードをコピー コードは次のとおりです:

$i = 1;
while ($i < 3) {
include("somefile.$i ");
$i++;
}

2. 実行中のさまざまなエラー報告方法

include と require の違い: include がファイルを導入するとき、エラーが発生した場合、プロンプトが表示され、以下のコードは実行を継続します。 require がファイルをインポートするときにエラーが発生すると、プロンプトが表示され、次のコードの実行が停止されます。たとえば、次の例:


test1.php と test2.php という名前の 2 つの php ファイルを同じディレクトリに作成しないように注意してください。

test1.php

コードをコピーします コードは次のとおりです:

include ("test3.php");
echo "abc";
?>

test2 .php
コードをコピーします コードは次のとおりです:

require ("test3.php")
echo "abc";
?>

最初のファイルを参照します。test999.php ファイルが見つからないため、エラー メッセージの下に次のようなメッセージが表示されます。
警告: include( test3.php ) [function.include]: ストリームを開けませんでした: D:WebSitetest.php の 2 行目にそのようなファイルまたはディレクトリはありません

警告: include() [function.include]: 'test3.php' を開けませんでしたD:WebSitetest.phpの2行目
abcのinclusion (include_path ='.;C:php5pear') (以下が実行されます)

2番目のファイルを参照します。test3.phpファイルが見つからなかったため、エラーが発生しました。メッセージは表示されますが、abc はエラー メッセージの下に表示されません。表示される内容は次のようなものになる可能性があります:
警告: require(test3.php) [function.require]: ストリームを開けませんでした: D にそのようなファイルまたはディレクトリはありません。 :WebSitetest2.php 2 行目

致命的なエラー: require() [function.require]: D:WebSitetest.php の 2 行目で必要な 'test3.php' (include_path='.;C:php5pear') を開くことができませんでした

以下 実行されずに直接終了します
つまり、include実行時に呼び出されるのはプロセス動作で条件付き、requireはプリセット動作で無条件です。

www.bkjia.com本当http://www.bkjia.com/PHPjc/824897.html技術記事 PHP プログラミングでは、include() と require() は同じ機能を持ちます。 include(include_once) と require(require_once) はどちらも、インクルードされたファイルのコードを指定された場所に読み込みますが、どちらも...
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート