オブジェクト指向プログラミングオブジェクト指向プログラミングPHPのオブジェクト指向プログラミングについてのリファレンス。オブジェクト変数の値渡しオブジェクトの値渡しとは、あるオブジェクト変数の値を、他のオブジェクト変数に代入すること。2つのオブジェクト変数は、別々のオブジェクト変数となる。オブジェクト変数の参照渡しオブジェクト変数の参照渡しとは、あるオブジェクト変数を、他のオブジェクト変数から参照すること。一方のオブジェクト変数は、もう一方のオブジェクト変数の、別名(エイリアス)となる。クラス、プロパティ、メソッドの、定義と呼び出しの基本クラス、プロパティ、メソッドの、定義と呼び出しの基本的書式。クラスの定義と命名規則クラスの定義は、classのあとに、半角の空白、クラス名を書き、次に、プロパティやメソッドを、波括弧{}で一括りにして書く。プロパティの定義と命名規則プロパティの定義は、public、protected、privateにより、アクセス可能範囲を宣言したあとに、半角の空白、$、プロパティ名を続けて書き、次に、代入演算子を使い、プロパティに値を設定する。プロパティのアクセス可能範囲プロパティは、public、protected、privateにより、アクセス可能範囲(参照可能範囲/アクセス権/アクセス制限)を宣言する必要がある。メソッドの定義と命名規則メソッドの定義は、functionのあとに、半角の空白、メソッド名を書き、次に、メソッド内の処理文を、波括弧{}で一括りにして書く。引数付きメソッドメソッドは、引数で、データを受け渡すこともできる。メソッドのアクセス可能範囲メソッドは、public、protected、privateにより、呼び出し可能範囲(参照可能範囲/アクセス権/アクセス制限)を宣言することができる。何も宣言しない場合は、publicとなる。インスタンスを作成インスタンスは、newのあとに、クラス名を書き、オブジェクト変数に代入することで作る。インスタンスを作ることで、プロパティやメソッドにアクセスできるようになる。疑似変数$thisで、メソッドから同じクラス内のプロパティへアクセスメソッドの内部から、同じクラス内のプロパティへアクセスするには、疑似変数「$this」を使う。疑似変数$thisで、メソッドから同じクラス内の別のメソッドを呼び出すメソッドの内部から、同じクラス内の別のメソッドを呼び出すには、疑似変数「$this」を使う。オブジェクト定数(クラス内定数)オブジェクト定数(クラス内定数)は、「const」キーワードを前に付けて定義する。静的プロパティ静的プロパティは、プロパティを定義するときに、「static」キーワードを前に付けて定義する。静的プロパティには、「クラス名::$プロパティ名」で、アクセスする。インスタンスや、矢印演算子「->」を使ったアクセスはできない。静的メソッド静的メソッドは、メソッドを定義するときに、「static」キーワードを前に付けて定義する。静的メソッドは、「クラス名::メソッド名()」で呼び出すことができる。静的メソッドの内部から、疑似変数「$this」で呼び出すことはできない。引数付き静的メソッド静的メソッドは、引数で、データを受け渡すことができる。コンストラクタ・メソッドコンストラクタ・メソッドのあるクラスのインスタンスを作成すると、その度に、コンストラクタ・メソッドを呼び出す。引数付きコンストラクタ・メソッドコンストラクタ・メソッドは、引数で、データを受け渡すことができる。デストラクタ・メソッドデストラクタ・メソッドのあるクラスのインスタンスを破棄すると、デストラクタ・メソッドを呼び出す。他のクラスのプロパティとメソッドを継承するには、「extends」キーワードを使う。複数のクラスから継承することはできない。同じクラスのオブジェクト定数(クラス内定数)へアクセス同じクラスのオブジェクト定数(クラス内定数)へアクセスするには、「self」キーワードを使うことができる。親クラスのオブジェクト定数(クラス内定数)へアクセス親クラスのオブジェクト定数(クラス内定数)へアクセスするには、「parent」キーワードを使うことができる。同じクラスの静的プロパティへアクセス同じクラスの静的プロパティへアクセスするには、「self」キーワードを使うことができる。親クラスの静的プロパティへアクセス親クラスの静的プロパティへ、子クラスからアクセスするには、「parent」キーワードを使うことができる。同じクラスの静的メソッドを呼び出す同じクラスの静的メソッドを呼び出すには、「self」キーワードを使うことができる。親クラスの静的メソッドを呼び出す親クラスの静的メソッドを、子クラスから呼び出すには、「parent」キーワードを使うことができる。親クラスから継承したメソッドをオーバーライド(再定義)親クラスから継承したメソッドをオーバーライド(再定義)するには、子クラス内で、同じメソッド名のメソッドを定義する。finalメソッド子クラスで、メソッドを、オーバーライド(再定義)できないようにするには、親クラスでメソッドを定義するときに、finalキーワードを前に付け、finalメソッドにする。finalクラス子クラスを作れないようにするには、親クラスを定義するときに、finalキーワードを前に付けて定義する。finalクラスを拡張し、子クラスを作ろうとすると、エラーとなる。親クラスのコンストラクタ・メソッド子クラスにコンストラクタ・メソッドがなければ、親クラスのコンストラクタ・メソッドを、自動的に呼び出す。子クラスにコンストラクタ・メソッドがあるときは、親クラスのコンストラクタ・メソッドを、自動的には呼び出さない。親クラスのコンストラクタ・メソッドを呼び出すには、子クラスのコンストラクタの中で、parent::__construct();とする。親クラスのデストラクタ・メソッド子クラスにデストラクタ・メソッドがなければ、親クラスのデストラクタ・メソッドを、自動的に呼び出す。子クラスにデストラクタ・メソッドがあるときは、親クラスのデストラクタ・メソッドを、自動的には呼び出さない。親クラスのデストラクタ・メソッドを呼び出すには、子クラスのデストラクタの中で、parent::__destruct();とする。抽象クラス、抽象メソッド抽象クラスは、クラスを定義するとき、「abstract」キーワードを前に付けて定義する。抽象クラスは、インスタンスを作れない。抽象メソッドは、メソッドを定義するとき、「abstract」キーワードを前に付けて定義する。抽象メソッドを持つクラスは、抽象クラスでなければならない。抽象メソッドは、実装を定義できないので、実装は、子クラスにおいて、必ず定義しなければならない。インターフェイスインターフェイス(オブジェクト・インターフェイス)は、あるクラスが実装する必要があるメソッドを、宣言しておくもの。インターフェイスの継承インターフェイス(オブジェクト・インターフェイス)は、クラスと同様、「extends」演算子で継承できる。複数のインターフェイスの継承インターフェイス(オブジェクト・インターフェイス)は、複数のインターフェイスを継承できる。「extends」演算子のあとに、複数のインターフェイスを、カンマで区切りで指定する。インターフェイスの定数インターフェイス(オブジェクト・インターフェイス)における定数は、オブジェクト定数(クラス内定数)同様、「const」キーワードを前に付けて定義する。アクセスは、インターフェイス名::定数名。クラスやインターフェイスをオートローディング未定義のクラスやインターフェイスを使おうとすると、自動的に呼び出す(オートローディングする)ようにするには、spl_autoload_register関数を使う。プロパティは、foreach文などの反復処理に使用できる。WordPress.。