(PHP 5 >= 5.1.0)
ReflectionClass::hasMethod — メソッドが定義されているかどうかを調べる
そのクラスで特定のメソッドが定義されているかどうかを調べます。
調べたいメソッドの名前。
メソッドが定義されている場合に 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)