ReflectionClass::getMethod
ReflectionClass::getModifiers
ReflectionClass
PHP Manual

# ReflectionClass::getMethods

(PHP 5)

ReflectionClass::getMethods — メソッドの配列を取得する

### 説明

public array ReflectionClass::getMethods ([ int `$filter` ] )

クラスのメソッドの配列を取得します。

### パラメータ

`filter`

  結果をフィルタして、特定の属性を持つメソッドだけを含めるようにします。 デフォルトは、何もフィルタしません。

  `ReflectionMethod::IS_STATIC`、 `ReflectionMethod::IS_PUBLIC`、 `ReflectionMethod::IS_PROTECTED`、 `ReflectionMethod::IS_PRIVATE`、 `ReflectionMethod::IS_ABSTRACT`、 `ReflectionMethod::IS_FINAL` の任意の組み合わせ。

### 返り値

各メソッドを表す ReflectionMethod オブジェクトの配列を返します。

### 例

例1 ReflectionClass::getMethods() の基本的な使用例

`<?php
class Apple {
public function firstMethod() { }
final protected function secondMethod() { }
private static function thirdMethod() { }
}
$class = new ReflectionClass('Apple');
$methods = $class->getMethods();
var_dump($methods);
?>`

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

    array(3) {
      [0]=>
      &object(ReflectionMethod)#2 (2) {
        ["name"]=>
        string(11) "firstMethod"
        ["class"]=>
        string(5) "Apple"
      }
      [1]=>
      &object(ReflectionMethod)#3 (2) {
        ["name"]=>
        string(12) "secondMethod"
        ["class"]=>
        string(5) "Apple"
      }
      [2]=>
      &object(ReflectionMethod)#4 (2) {
        ["name"]=>
        string(11) "thirdMethod"
        ["class"]=>
        string(5) "Apple"
      }
    }

例2 ReflectionClass::getMethods() のフィルタリング

`<?php
class Apple {
public function firstMethod() { }
final protected function secondMethod() { }
private static function thirdMethod() { }
}
$class = new ReflectionClass('Apple');
$methods = $class->getMethods(ReflectionMethod::IS_STATIC | ReflectionMethod::IS_FINAL);
var_dump($methods);
?>`

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

    array(2) {
      [0]=>
      &object(ReflectionMethod)#2 (2) {
        ["name"]=>
        string(12) "secondMethod"
        ["class"]=>
        string(5) "Apple"
      }
      [1]=>
      &object(ReflectionMethod)#3 (2) {
        ["name"]=>
        string(11) "thirdMethod"
        ["class"]=>
        string(5) "Apple"
      }
    }

### 参考

- ReflectionClass::getMethod() - クラスメソッドの ReflectionMethod を取得する

ReflectionClass::getMethod
ReflectionClass::getModifiers
ReflectionClass
PHP Manual