• ベストアンサー

include_onceについて

php初心者です。 includeやrequireにはinclude_onceやrequire_onceといった "すでに読み込んでいる場合"は無視するというものがありますが、 この"すでに読み込んでいる場合"とはどういう時なのでしょうか? サーバーにキャッシュでもされていて、そのキャッシュがあればそれを利用するという感じなのですか? どういう条件でinclude_onceやrequire_onceが実行されるのか教えてください。 また、どういう時に使い分けるのが賢いやり方なのでしょうか。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.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)
回答No.1

>どういう条件でinclude_onceやrequire_onceが実行されるのか教えてください。 >また、どういう時に使い分けるのが賢いやり方なのでしょうか。 この部分についてこういうBLOGを見つけました。 いかがでしょうか? http://d.hatena.ne.jp/unau/20090122/1232574417 Googleで検索したキーワードは「include_once require_once 使い分け」です。

参考URL:
http://d.hatena.ne.jp/unau/20090122/1232574417

関連するQ&A