require_once()命令は、C言語のプリプロセッサ #includeの動作と全く同様にこの部分を指定したファ イルで置換し、この面では、require()命令に似てい ます。主な違いは、読み込みの連鎖です。 require_once()を使用した場合、そのコードがスク リプトに読み込まれるのが一回だけであることが保証され、変数の値また は定義した関数の名前が壊されるのを回避します。
例えば、utils.incと foolib.incという2つのファイルを作成するとしましょ う。
GLOBALS ARE NICE
this is requiring globals.inc again which is also
required in foolib.inc
Running goodTea: Oolong tea tastes good!
Printing foo:
Array
(
[0] => 1
[1] => Array
(
[0] => complex
[1] => quaternion
)
)
|
また、Cプリプロセッサの動作との類似にも注意して下さい。この命令は、 "コンパイル時"、つまり、スクリプトがパースされた後で実行される前に 実行され、実行時に動的に挿入される必要があるスクリプトの部分に使用 するべきではありません。このような場合は、 include_once()または include()を使用して下さい。
require_once()および include_once()の他の例については、最新のPHPソー スコード配布ファイルに含まれるPEARのコードを参照下さい。
require()、include()、 include_once()、 get_required_files()、 get_included_files()、 readfile()、virtual()も参照 下さい。