在 PHP 中,instanceof
關鍵字主要用于檢查對象是否屬于某個類或接口的實例。它不能直接用于接口繼承,但你可以使用它來檢查一個對象是否實現了某個接口。
接口繼承的概念與類繼承不同。在 PHP 中,接口繼承使用 extends
關鍵字。例如:
interface A {
public function methodA();
}
interface B extends A {
public function methodB();
}
在這個例子中,接口 B
繼承了接口 A
。這意味著任何實現接口 B
的類都必須同時實現接口 A
中的所有方法。
要檢查一個對象是否實現了某個接口,你可以使用 instanceof
關鍵字,如下所示:
class MyClass implements B {
public function methodA() {
// ...
}
public function methodB() {
// ...
}
}
$obj = new MyClass();
if ($obj instanceof B) {
echo "The object implements interface B";
} else {
echo "The object does not implement interface B";
}
在這個例子中,我們創建了一個實現接口 B
的類 MyClass
。然后,我們使用 instanceof
關鍵字檢查對象 $obj
是否實現了接口 B
。如果是,則輸出 “The object implements interface B”,否則輸出 “The object does not implement interface B”。