Получения всех методов класс

137
28 сентября 2021, 13:00

Получаю через Reflection все публичные методы определенного класса. Но он вытягивает методы и из классов наследников, как мне сделать что бы получал только методы данного класса который был указан ?

 $ref = new \ReflectionClass('nameSpace');
$methods[] = $ref->getMethods(\ReflectionMethod::IS_PUBLIC);
Answer 1
class A {
    public function method1() {
    }
    public function method2() {
    }
}
class B extends A {
    public function method3() {
    }
    public function method4() {
    }
}
$class = new ReflectionClass('A');
foreach($class->getMethods() as $m) {
    if($m->getDeclaringClass()->getName() === $class->getName()) {
        echo $m->getName(), PHP_EOL;
    }
}

Выведет:

method1
method2

Вместо echo делайте то, что вам необходимо.

READ ALSO
Отладка работы CMS (Apache)

Отладка работы CMS (Apache)

В общем у меня такая проблема: Мне нужно развернуть сервер (LAMP) с CMS

160
электронная подписть php с#

электронная подписть php с#

У меня есть сервер на php и клиент на c# ( unity )На сервере( рhp ), нужно зашифровать строку с помощью приватного ключа так, чтобы на клиенте( c# ) можно...

155
высвечивает красным,работает

высвечивает красным,работает

Почему так происходит,обьясните

214