• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:アロー演算子について)

アロー演算子についてわかりやすく教えてください

このQ&Aのポイント
  • アロー演算子を使う時は、クラス内の変数などにアクセスする際に使用します。普通はクラスを使わない場合は、アロー演算子は使用しません。
  • 他のファイルから呼び出す場合は、require_onceなどを使用してからアロー演算子で呼び出します。
  • PDOもrequire_onceなどで呼び出してから使用します。

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

  • ベストアンサー
noname#244856
noname#244856
回答No.1

回答1 クラスのプロパティ・メソッドへの静的アクセス 「::」 HogeClass::$hoge; HogeClass::hoge(); オブジェクト(クラスのインスタンス)のプロパティ・メソッドへの動的アクセス 「->」 $obj = new HogeClass; $obj->hoge; $obj->hoge(); 回答2 他のファイルにクラスが定義されている場合はrequire_onceでの呼び出しが必要です。 オートローディングという手法もあります。 http://php.net/manual/ja/language.oop5.autoload.php 回答3 PDOクラスはC言語レベルでコーディングされたエクステンションです。 コードが読み込まれる前にすでに使える状態となっています。 回答4・回答6 ifブロックの中で定義されている場合を除き、後ろに定義を書いていても前で使うことが出来ます。 ただし分かりにくくなるのでお勧めはしません。 回答5 >> 変数や関数 「プロパティやメソッド」が正しい呼び名です。 >> $hoge変数にclass numberdayoの処理が詰まっているってことでしょうか? 「static」とついているもの以外の内容が詰まっています。 それらには「->」でアクセスできます。 「static」なものに関しては回答1で述べたようにクラス名に対して直接「::」でアクセスします。 なお >> function numberdayo() { >>  print($this->number); >> } よりも public function numberdayo() {  print($this->number); } とちゃんと「public」を頭につけたほうが望ましいでしょう。 省略はもちろん「public」を意味するんですが。 またクラス構成として、インスタンスを作った後に$numberを外部から変更されたくなければ class numberdayo {  private $number;  public function __construct($number) {   $this->number = $number;  }  public function numberdayo() {   print($this->number);  } } $hoge = new numberdayo(2); $hoge->numberdayo(); として「コンストラクタ」で代入を行い、プロパティ自体は「private」にして外部からのアクセスを遮断するのがポイントになります。

flash0
質問者

お礼

回答ありがとうございます 一歩前にすすめました

関連するQ&A