require 文は、 プリプロセッサの #include 文の動作と 同じく、自分自身を指定したファイルで置き換えます。
これは、ループ構造の中に require 文 を置き、各ループ毎に別のファイルの内容を読み込むことが できないことを意味します。 これを行うには、include文を使用して下さい。
1 2 require 'header.inc'; 3 |
include() およびrequire() は共に 実際にターゲットファイルの中身を呼出側のファイル自体に読みこむことに 注意してください。ターゲットを HTTP のようなものを経由してコールする わけではありません。よって、 インクルードされるファイルは効率的に呼出側のファイルの一部になるため、 インクルードされた側のスコープで設定された全ての変数はインクルード されるファイルの中でも自動的に利用可能です。
1 2 include( "file.inc?varone=1&vartwo=2" ); /* 動作しません */ 3 4 $varone = 1; 5 $vartwo = 2; 6 include( "file.inc" ); /* $varone および $vartwo は file.inc で利用可能です */ 7 8 |