- ベストアンサー
アロー演算子についてわかりやすく教えてください
- アロー演算子を使う時は、クラス内の変数などにアクセスする際に使用します。普通はクラスを使わない場合は、アロー演算子は使用しません。
- 他のファイルから呼び出す場合は、require_onceなどを使用してからアロー演算子で呼び出します。
- PDOもrequire_onceなどで呼び出してから使用します。
- みんなの回答 (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」にして外部からのアクセスを遮断するのがポイントになります。
お礼
回答ありがとうございます 一歩前にすすめました