• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:require Auth.php)

require Auth.phpの動作について教えてください

このQ&Aのポイント
  • require Auth.phpという記述は、Auth.phpの内容を取り込むことを意味します
  • また、requireは指定したファイルを必須として取り込むため、Auth.phpが存在しない場合はエラーが発生します
  • したがって、a.phpにrequire 'Auth/Auth.php';と記述することで、Auth.phpの内容をa.phpで使用することができます

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

  • ベストアンサー
  • JaneDue
  • ベストアンサー率75% (263/350)
回答No.2

継承ではありませんので(1)です。requireで読み込んで「Auth.phpを使用できる準備をしている」だけです。 >Auth.phpも同じ動作と思っていいものなのでしょうか。 同じです。サンプルのinclude.phpが <?php function myfunc(){ echo "~"; } ?> だとすると分かりやすいかも。includeしただけでは何も起こりませんが、必要な時に myfunc(); を実行できるようになりますよね。それと同じです。 ただ、ライブラリ系はスクリプトのあちこちでrequireするのではなく、見通しをよくするため、スクリプトの上部にまとめて書かれることが多いです。 ちなみに継承とは、例えば「 Auth.phpを使用したいけど、機能が足りないので自分で追加したい」といった場合に class Auth2 extends Auth{~} のように書きますが、この時「 Auth2クラスは、Authクラスを継承している」と言います。

ShiftTail
質問者

お礼

なるほど。 function myfunc(){ echo "~"; } で実験しました。 myfunc()だけで呼び出せますね。 この関数で呼べるということは、 「同じソースにあるから、newしなくても呼び出せる」 ということですね。 かなり理解できました。ありがとうございます。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

この手の汎用性のあるライブラリはincludeやrequireしても なにも挙動しません。 newなどでオブジェクトを生成して初めて実行性があるものになります。

ShiftTail
質問者

お礼

ありがとうございます。 newして、やはり初めて実行性があるもになるのですね。 助かりました。

関連するQ&A

専門家に質問してみよう