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

require once('***.php')の使い方とは?

このQ&Aのポイント
  • require once('***.php')はオブジェクト指向の項で頻繁に登場する便利な機能です。
  • 具体的な使い方や機能については検索してもなかなか理解しにくいですが、要するに'***.php'を丸ごと取り込む機能です。
  • オンラインの入門書やYouTubeなどで情報を集めると、コピーする方法として使うことができるという内容もあります。

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

  • ベストアンサー
  • dell_OK
  • ベストアンサー率13% (776/5751)
回答No.5

回答No.2です。 ・require_onceだと、余計なところもコピーされて 元のファイルも分けなくてはなりません。 require_once ('a.php')はa.phpファイルの全コピーだと 理解してもいいのでしょうか? はい、全コピーです。 わかっていらっしゃるようですね。 余計なところは分けなくてはいけません。 が。 いま、そのへんをつつくと動かなくなりそうなので、 回答No.3さまが言われるように、 まだ使われない方が無難です。 コピーでしのいでください。 私が前回説明したのはファイルがふたつでしたが、 ファイルが何十何百とあるようなシステムの例えで、 何十か所からも読み込まれていたら大変、 と言うことが言いたかったのです。 それと。 オブジェクト指向とrequireが一緒に出てくるとしたら、 各ファイルがひとつのクラスを定義しているのだと想像します。 難しい話しになるので、そこは後回しにしていいと思います。

すると、全ての回答が全文表示されます。

その他の回答 (4)

回答No.4

>$_POSTは理解しなければいけないでしょう。 そうですが、まだ勉強するには早すぎるでしょう。 別に基礎を覚えてからでも遅くはないと思いますよ。 一応 https://www.php.net/manual/ja/language.variables.superglobals.php スーパーグローバルの説明についての、ページを 乗せておきますが。すでに読んでいるとは思いますが。

kouzou250
質問者

お礼

ご回答誠にありがとうございます。 $_POSTが出てくるまでは、オブジェクト指向以外は 理解しました。 フォームに関する章は後回しにします。

すると、全ての回答が全文表示されます。
回答No.3

結論から言うと、「まだ使わなくてもOK」だとおもう。 恩恵がわからないなら、使っても、面倒が増えるだけで まずメリットがないのでね~ ちなみ。 AがBを参照して、BがAを参照してるINCLUDEがあったら、 どうなるかな~ってのも、考えてみると、楽しいかも それと、一番大事な事 >検索しても納得のいく説明が得られません。 「オブジェクト指向」とrequire何の関係もないです。 そうです。関係がない事なので、答えがないのも当然です。 >$_POSTも分かりにくいです。 スーパーグローバル 宣言しなくても常にいる変数。 他にもいっぱいあるので。 $_SERVERなどをprint_r してみれば、どれだけの量のデータが入ってるか みれるでしょう~ (まともにプログラムするには必須になってくるので) ただいまは見てもあんまりメリットはない。 基礎を覚えるのが先なので。 前にも言ったが、 料理の素人に高級料理のレシピを教えても 無意味なので。 そこまで行けないってわかってるのでね。 (行けないというより行くべきじゃないですね。食材がもったいないだけなので)

kouzou250
質問者

お礼

ご回答誠にありがとうございます。 $_POSTは理解しなければいけないでしょう。 もう1度読み直します。

すると、全ての回答が全文表示されます。
  • dell_OK
  • ベストアンサー率13% (776/5751)
回答No.2

例えば、次のようなみっつのファイルがあったとします。 a.php ---- require_once('c.php'); ---- b.php ---- require_once('c.php'); ---- c.php ---- /* なにかしらの処理 */ ---- a.phpからもb.phpからもc.phpが読み込まれています。 c.phpのなにかしらの処理を修正する必要がでたので修正したとします。 a.phpとb.phpは修正する必要がありません。 一方、「コピーすればいい」の場合、次のようなふたつのファイルになります。 a.php ---- /* なにかしらの処理 */ ---- b.php ---- /* なにかしらの処理 */ ---- それでなにかしらの処理を修正する必要がでた場合にa.phpとb.phpを修正する必要があります。 もちろんa.phpを修正したあとそれをb.phpにコピーすればいいです。 ですが、b.phpにコピーするのを忘れたり、コピーする際に範囲を間違ったりして、動かなくなることがあります。 もちろん動かなければコピーしなおせばいいです。 ですが、そのコピーの手間はおよそ無駄にコストをかけているだけになります。 require_onceで読み込んだ方がコストを削減できることになります。 ただ、複数個所から読み込まれないのに別ファイルになっていることもあります。 ひとつのファイルを巨大化させるより、ある処理のかたまりを別にしておいた方が管理しやすいなどもあります。

kouzou250
質問者

お礼

ご回答誠にありがとうございます。 せっかく例を挙げてご説明くださったのに、 かゆいところが、解りませんでした。 require_onceだと、余計なところもコピーされて 元のファイルも分けなくてはなりません。 require_once ('a.php')はa.phpファイルの全コピーだと 理解してもいいのでしょうか? どうか教えてください。

すると、全ての回答が全文表示されます。
  • wormhole
  • ベストアンサー率28% (1626/5665)
回答No.1

require once ではなくて require_once です。 >***.phpを丸っと持ってくる。というイメージです。 >と、YouTubeで聞きましたが、それだったらコピー >すればいいと思います。 >***.phpをどうする機能なのでしょうか? 「***.phpを丸っと持ってくる。というイメージです。」と書かれているような機能ですが。 あなたが「コピーすればいいんだから、そういう機能であるはずがない」と思われようが、それは変わりません。 より厳密には、 ・引数のファイルを読み込む ・既に読み込まれているファイルは2回目以降読み込まない ・読み込めなかった場合には致命的エラーとして処理中断される です。 >オブジェクト指向の項に再三登場します。 >require onceの説明がないのです。 オブジェクト指向の項で探してるとかでしょうか。 オブジェクト指向に関わる機能ではないから別の項にあるんじゃないかなぁ。 もしかして入門書、自分が気になるところだけ拾い読みしてます?

kouzou250
質問者

お礼

ご回答誠にありがとうございます。 拾い読みしていません。 最初から読んで、半分までは「JAVAに比べれば易しいな。」と楽しい気分で読んでいました。 オブジェクト指向で分からなくなりました。 require_onceと関係ないのですか!? オブジェクト指向でrequire_onceがイッパイ出てきた 気がしますけど・・・。 もう1度、読み直します。

すると、全ての回答が全文表示されます。