Ho bisogno di sapere se il metodo è dichiarato come statico dato il suo nome e il nome della classe che lo contiene. method_exists
fornisce true
per entrambi i metodi statici e non statici.Come verificare se un metodo è statico in PHP?
5
A
risposta
6
7
Ecco un po 'più chiaro su come utilizzare ReflectionMethod:
$MethodChecker = new ReflectionMethod($ClassName,$MethodName);
var_dump($MethodChecker->isStatic());
Come funziona? Il collegamento punta a ReflectionClass :: getStaticPropertyValue ma è per le proprietà non per i metodi. Dovrebbe collegarsi qui: http://php.net/manual/en/reflectionmethod.isstatic.php ma non ha esempi e non riesco a capire come funziona. –
Capito. Aggiungere una nuova risposta. –
$ method = new ReflectionMethod ('NameOfClass', 'nameOfMethod'); $ isStatic = $ metodo-> isStatic(); –