Hallo,
gibt es eine Möglichkeit zu überprüfen ob eine Methode statisch ist oder nicht (PHP5)?
Beispiel:
die gesuchte Funktion sollte für foo1 false zurückgeben, und für foo2 true.
Ich habe bisher leider nur die Möglichkeit über die Reflection API gefunden, aber dazu brauche ich eine Instanz der Klasse, und das ist genau das Problem das ich umgehen möchte.
Folgende Ansätze Funktionieren leider nicht:
Danke schon mal für eure Hilfe!
gibt es eine Möglichkeit zu überprüfen ob eine Methode statisch ist oder nicht (PHP5)?
Beispiel:
PHP-Code:
class bar {
private $var1 = 'test1';
static private $var2 = 'test2';
public function foo1() {
return $this->var1;
}
public static function foo2() {
return self::$var2;
}
}
Ich habe bisher leider nur die Möglichkeit über die Reflection API gefunden, aber dazu brauche ich eine Instanz der Klasse, und das ist genau das Problem das ich umgehen möchte.
Folgende Ansätze Funktionieren leider nicht:
PHP-Code:
echo '<b>function_exists</b><br />';
echo function_exists(array('bar','foo1')) ? 'true' : 'false'; // false
echo '<br />';
echo function_exists(array('bar','foo2')) ? 'true' : 'false'; // false
echo '<br />';
echo '<b>is_callable</b><br />';
echo is_callable(array('bar','foo1')) ? 'true' : 'false'; // true
echo '<br />';
echo is_callable(array('bar','foo2')) ? 'true' : 'false'; // true
echo '<br />';
echo '<b>method_exists</b><br />';
echo method_exists('bar','foo1') ? 'true' : 'false'; // true
echo '<br />';
echo method_exists('bar','foo2') ? 'true' : 'false'; // true
echo '<br />';
Kommentar