use FotonModuleDebag;
Вызываем $debag = new Debag($class,$method);
$class – класс, $method – метод,не обязательный параметр
Класс работает через рефлексию
Условие, если метод не указан при вызове Debag:
all() - запускает обработку всех методов класса, если при вызове метод не был указан
methods() - выводит массив всех методов класса, если при вызове метод не был указан
$debag→all()→methods() - выведет все методы класса
$debag→all()→isAbstract()->return() – выведет все методы класса и покажет являются ли они абстрактными метода
Вместо isAbstract можно подставить любой из методов рефлексии.
Для проверки свойствасамого класса нужно обратиться к свойству
$debag→all()→is()→isCloneable
Методы записывающие свойства всех методов в свойство attr
attr() - класс - getDocComment,getStartLine,getEndLine
param() - метод – getParameters, класс - getDefaultProperties, getProperties, getStaticProperties, getConstants
name() - метод – getPrototype, класс getName, getShortName, getNamespaceName, inNamespace
is() - метод – isAbstract, isConstructor, isDestructor, isFinal, isPrivate, isProtected, isPublic, класс – isAbstract, isAnonymous, isCloneable, isFinal, isInterface, isTrait
Для вывода данных используйте текучий интерфейс для каждого метода в таком виде:
$debag→all()→attr()→arr() - выведет комментарии и количество строк класса
$debag→all()→param()→arr() - выведет все свойства и константы класса
$debag→all()→name()→arr() - выведет все namespaces и use класса
$debag→all()→is()→arr() - выведет все свойства всех методов класса
$debag→all()→is()→return() вывод с очисткой свойств дебагера, выводит return
$debag→all()→is()→end() - печатает массив и дает возможность повторного вызова цепочки, например вот так
$debag→all()→is()→end()→all()→name()→arr()
Условие, если метод указан при вызове Debag:
$debag→argcount() - выводит количество всех параметров для метода
$debag→iscount() - выводит количество обязательных параметров для метода
$debag→all()→isPublic()→return() - выведет true если метод публичный или false в обратном случае
Вместо isPublic можно подставить любой из методов рефлексии.
Аналогично $debag→all()→is()→isPublic
use FotonModuleIsDebag;
Вызываем $debag = new IsDebag($class,$method);
$class – класс, $method – метод,не обязательный параметр
Класс работает через рефлексию
Условие, если метод не указан при вызове IsDebag:
$debag→isCloneable()→return() - проверит клонируем ли класс
Вместо isCloneable можно подставить любой из методов рефлексии.
$debag→all()→isPublic()→return() - если хотя бы один метод класса не публичный выведет false
$debag→all()→if(true)→isPublic()→return() - если хотя бы один метод класса публичный выведет true
Условие, если метод указан при вызове IsDebag:
$debag→all()→isPublic()→return() - выведет true если метод публичный или false в обратном случае