- ベストアンサー
include_onceについて
php初心者です。 includeやrequireにはinclude_onceやrequire_onceといった "すでに読み込んでいる場合"は無視するというものがありますが、 この"すでに読み込んでいる場合"とはどういう時なのでしょうか? サーバーにキャッシュでもされていて、そのキャッシュがあればそれを利用するという感じなのですか? どういう条件でinclude_onceやrequire_onceが実行されるのか教えてください。 また、どういう時に使い分けるのが賢いやり方なのでしょうか。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
a.phpが、 <?php echo "A\n"; という内容だったとして、 <?php for($i=0;$i<10;$i++) inlucde("a.php"); だと、A が10回表示されます。 <?php for($i=0;$i<10;$i++) inlucde_once("a.php"); だと、1回です。 そういう意味です。 他のケースとしては、x1.php x2.php x3.php がそれぞれ 定義や宣言をしている y.php をinlcudeしているとして、 include("x1.php");include("x2.php");include("x3.php"); すると、y.phpが3回実行されてしまいます。定義や宣言は一度でいいので、y.phpは include_onceすることにすれば、1回だけ実行されます。
その他の回答 (1)
- t_hirai
- ベストアンサー率28% (222/788)
>どういう条件でinclude_onceやrequire_onceが実行されるのか教えてください。 >また、どういう時に使い分けるのが賢いやり方なのでしょうか。 この部分についてこういうBLOGを見つけました。 いかがでしょうか? http://d.hatena.ne.jp/unau/20090122/1232574417 Googleで検索したキーワードは「include_once require_once 使い分け」です。