PHP_PHP チュートリアルで、require()、include()、require_once()、および include_once() の違いについて説明しましょう。

WBOY
リリース: 2016-07-13 16:56:11
オリジナル
888 人が閲覧しました

この記事では、PHP で外部ファイルを呼び出す 4 つの関数の使用法と違いを紹介します。詳しく知りたい人は参考にしてください。

ファイルを参照するには、require と include の 2 つの方法があります。 2 つの方法により、使用上の柔軟性が異なります。

require は require("MyRequireFile.php"); のように使用されます。この関数は通常、PHP プログラムの先頭に配置され、PHP プログラムが実行される前に、まず require で指定されたファイルを読み込み、それを PHP プログラムの Web ページの一部にします。このようにして、よく使われる機能を Web ページに導入することもできます。

include は include("MyIncludeFile.php"); のように使用されます。この機能は通常、フロー制御の処理部分に配置されます。 PHP プログラムの Web ページは、インクルード ファイルを読み取るときにのみ読み取ります。これにより、プログラムの実行処理を簡略化することができる。


_once サフィックスは、ロードされたものがロードされていないことを意味します

1. エラーを報告する

ファイルをインクルードするときにエラーが発生すると、プロンプトが表示され、以下のコードが実行を継続します
require がファイルを導入するときにエラーが発生すると、プロンプトが表示され、次のコードの実行が停止します

注: PHP 4.3.5 より前では、インクルード ファイルの構文エラーによってプログラムが停止することはありませんでしたが、このバージョン以降は停止します。

2. 条件付き参照


include() は require() と同じ関数ですが、include() は条件付き包含関数であるのに対し、require() は無条件包含関数です。 たとえば、次の例では、変数 $somg が true の場合、ファイル somefile.php がインクルードされます:

コードは次のとおりですコードをコピーif($some){ 'somefile.php' をインクルード }
;
しかし、$some がどのような値を取っても、次のコードはファイル somefile.php をファイルにインクルードします。

コードは次のとおりですif($something){ 'somefile.php' が必要 } ; 次の例は、これら 2 つの関数の違いを完全に示しています
コードをコピー

コードは次のとおりです$i = 1; while ($i
コードをコピー

上記のコードから、プログラムがループするたびに同じファイルをインクルードすることがわかりますが、これは明らかに私たちが望んでいることではありません。 さまざまなファイルをインクルードするには、この関数を完了したい場合は、関数 include() のみを使用できます

コードは次のとおりです

コードをコピー$i = 1;; }
while ($i "somefile.$i.php" を含めます

3.相対パスを使用する場合は必須

A が B を参照し、B が別のファイル C を参照する場合、C のパスが相対パスの場合、B' に対する相対パスではなく、A のパスに対する相対パスになります

4.require_once() ステートメントには、スクリプト実行中に指定されたファイルが含まれ、実行されます。この動作は require() ステートメントに似ていますが、唯一の違いは、ファイル内のコードが既にインクルードされている場合、再度インクルードされないことです。

include_once() ステートメントは、スクリプトの実行中に指定されたファイルをインクルードして実行します。この動作は include() ステートメントに似ていますが、唯一の違いは、ファイル内のコードが既にインクルードされている場合、再度インクルードされないことです。このステートメントの名前が示すように、このステートメントは 1 回だけ含まれます。


5..ファイル参照方法

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

コードは次のとおりです コードをコピー
$login = include('test.php'); if(!empty($login))
{ echo “ファイルは正常に含まれました”;
}
それ以外
{ echo "ファイルのインクルードに失敗しました";
}
include() の実行時に参照する必要があるファイルは、毎回読み込んで評価する必要があります。

require() の実行時に参照する必要があるファイルは 1 回だけ処理されます (実際には、実行中に参照する必要があるファイルの内容が require() ステートメントを置き換えます)
これらの命令のいずれかを含むコードや、複数回実行される可能性のあるコードがある場合は、require()、
を使用する方が効率的であることがわかります。 コードが実行されるたびに異なるファイルを読み取る場合、または一連のファイルを反復処理するループがある場合は、 include(),
を使用します。 インクルードしたいファイル名の変数を設定できます。パラメータが include() の場合にこの変数を使用します。

コードは次のとおりですまとめ
コードをコピー
conn.php

$dbh=mysql_connect('localhost','root','123456');
mysql_select_db('DB','$dbh');
?>
実際のアプリケーションでは、次のようなファイルを呼び出します:
require("conn.php") または include("conn.php");
しかし、次の場合:
ファイル名.php
require("conn.php");
関数 myfun($par1,$par2)
{データベース処理のステートメントが含まれています}
……
myfun($par1,$par2);
……
myfun($p1,$p2);
?>


include は使用時にロードされます

require は最初にロードされます
_once サフィックスは、ロードされたものがロードされていないことを意味します
PHP システムには、PHP プログラムをロードするときに擬似コンパイル プロセスがあり、これによりプログラムの実行速度が向上します。ただし、インクルードドキュメントは依然として解釈されて実行されます
インクルードファイルにエラーがあります。メインプログラムは実行を継続します
必須ファイルにエラーがあり、メインプログラムが停止しました
したがって、インクルードされたファイルのエラーがシステムにほとんど影響を及ぼさない場合 (インターフェースファイルなど)、include を使用し、それ以外の場合は require
を使用してください。 次のドキュメントは require() にも適用されます。 2 つの構造は、障害の処理方法を除いて同一です。 include() は警告を生成し、require() は致命的なエラーを引き起こします。つまり、ファイルが見つからない場合にページの処理を停止したい場合は、require() を使用します。 include() の場合はそうではなく、スクリプトは引き続き実行されます。また、適切な include_path が設定されていることを確認してください。
require() 関数は、それ自体を指定されたファイルの内容に置き換えます。この置換プロセスは、include() のように最初に計算されるのではなく、PHP エンジンがコードをコンパイルするときに行われます。 require() 関数は静的要素でよく使用され、include() は動的要素でよく使用されます。 include_once() と同様に、require_once() は、指定されたコードが挿入されているかどうかを最初に確認します。コードがすでに存在する場合、そのコードは再度挿入されません。

http://www.bkjia.com/PHPjc/631631.html

tru​​ehttp://www.bkjia.com/PHPjc/631631.html技術記事この記事では、外部ファイルを呼び出すための 4 つの PHP 関数の使用法と違いを紹介します。詳しく知りたい人は参考にしてください。 ファイルを参照するには、require と include の 2 つの方法があります。言及する 2 つの方法...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート