ReflectionClass::hasMethod

(PHP 5 >= 5.1.2, PHP 7, PHP 8)

ReflectionClass::hasMethodメソッドが定義されているかどうかを調べる

説明

publicReflectionClass::hasMethod(string$name): bool

そのクラスで特定のメソッドが定義されているかどうかを調べます。

パラメータ

name

調べたいメソッドの名前。

戻り値

メソッドが定義されている場合に true、それ以外の場合に false を返します。

例1 ReflectionClass::hasMethod() の例

<?php
Class C {
public function
publicFoo() {
return
true;
}

protected function
protectedFoo() {
return
true;
}

private function
privateFoo() {
return
true;
}

static function
staticFoo() {
return
true;
}
}

$rc = new ReflectionClass("C");

var_dump($rc->hasMethod('publicFoo'));

var_dump($rc->hasMethod('protectedFoo'));

var_dump($rc->hasMethod('privateFoo'));

var_dump($rc->hasMethod('staticFoo'));

// C には bar メソッドがありません
var_dump($rc->hasMethod('bar'));

// メソッド名は大文字小文字を区別しません
var_dump($rc->hasMethod('PUBLICfOO'));
?>

上の例の出力は以下となります。

bool(true) bool(true) bool(true) bool(true) bool(false) bool(true)

参考

To Top