継承によりオブジェクトとクラスの作成が簡素化され、コードの再現性が向上しますが、PHP は単一継承のみをサポートします。多重継承を実装する場合は、複数のインターフェイスを使用する必要があります。
インターフェイスは、interface キーワードを通じて宣言され、クラスには未実装のメソッドと一部のメンバー変数のみを含めることができます。形式は次のとおりです。
インターフェースインターフェース名{
関数インターフェース名1();
関数インターフェース名2();
…
サブクラスは、implements キーワードを使用してインターフェイスを実装します。複数のインターフェイスを実装する場合は、各インターフェイスを接続するためにコンマ「,」を使用する必要があります。また、実装されていないメソッドはすべてサブクラスで実装する必要があります。そうしないと、PHP でエラーが発生します。形式は次のとおりです:
class サブクラスは、interfaceName1,interfaceName2{ を実装します。
関数インターフェース名1(){
//関数の実装
}
関数インターフェース名2(){
//関数の実装
}
}
サンプルコードは次のとおりです:
<code><span><span><span><?php</span><span>//声明接口A</span><span><span>interface</span><span>A</span>{</span><span><span>function</span><span>Aa</span><span>()</span>;</span> } <span>//声明接口B</span><span><span>interface</span><span>B</span>{</span><span><span>function</span><span>Bb</span><span>()</span>;</span> } <span><span>class</span><span>Am</span><span>implements</span><span>A</span>{</span><span><span>function</span><span>Aa</span><span>()</span>{</span><span>echo</span><span>"Aa is a php coder"</span>; } } <span><span>class</span><span>Bm</span><span>implements</span><span>A</span>,<span>B</span>{</span><span><span>function</span><span>Aa</span><span>()</span>{</span><span>echo</span><span>"Mike is a php coder<br>"</span>; <span>echo</span><span>"Mike is an ios coder<br>"</span>; } <span><span>function</span><span>Bb</span><span>()</span>{</span><span>echo</span><span>"Jack is a java coder"</span>; } } <span>$jack</span> =<span>new</span> Am(); <span>$bluce</span> =<span>new</span> Bm(); <span>$jack</span>->Aa(); <span>echo</span><span>"<br>"</span>; <span>$bluce</span>->Aa(); <span>$bluce</span>->Bb(); <span>?></span></span></span></code>
実行結果は次のとおりです:
上記は、PHP 開発のためのインターフェイスの使用法を内容の側面も含めて紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。