Кто-нибудь знает, как определить, меня ли статически называют (Classname :: function) или внутри объекта (функция $ classInstance->) внутри метода PHP?
По общему признанию, это не офсайд … но у Шона Коутса есть классный и довольно простой подход к выяснению этого :
$isStatic = !(isset($this) && get_class($this) == __CLASS__);
Проверьте, установлен ли $this
и равен классу. Он будет равен для вызова экземпляра и не равно (или null) для статического вызова.