J'essaie d'accéder à une variable statique dans une classe en utilisant un nom de classe variable. Je suis conscient que, pour accéder à une fonction au sein de la classe, vous utilisez call_user_func()
:
class foo {
function bar() { echo 'hi'; }
}
$class = 'foo';
call_user_func(array($class, 'bar')); // prints hi
Cependant, cela ne fonctionne pas lorsque vous essayez d'accéder à une variable de statique dans la classe:
class foo {
public static $bar = 'hi';
}
$class = "foo";
call_user_func(array($class, 'bar')); // nothing
echo $foo::$bar; // invalid
Comment obtenir cette variable? Est-ce même possible? J'ai un mauvais pressentiment c'est seulement disponible dans PHP 5.3 et j'utilise PHP 5.2.6.
@Krinkle, s'il vous plaît ne prenez pas l'habitude d'ajouter gras au texte - il ne aide pas presque autant de choses que beaucoup de gens. Merci! – sarnold