2010-06-07 4 views
0

j'ai une classe avec cela dansproblèmes call_user_func_array

self::$DB = new PDO("mysql:dbname=$dbname;host:=127.0.0.1" , 'root' , ''); 

puis ce

public static function __callStatic($name, $arguments) 
{ 
return call_user_func_array(array('self::$DB', $name), $arguments); 
} 

Comment je ne le fais bien/travail?

Répondre

3

essayer

return forward_static_call_array(array(self::$DB, $name), $arguments);

+0

Dans ce cas, var_dump (self :: $ DB), parce que ce n'est pas aucun cas PDO dans __callStatic(). Le problème est probablement plus haut dans la chaîne/dans l'ordre des arguments. – Wrikken

+0

Assurez-vous que la première ligne de code que vous citez (où vous instanciez un nouvel objet PDO) est exécutée avant d'appeler une méthode statique sur cette classe. La meilleure chose à faire est peut-être de l'instancier dans la méthode __callStatic. –

+0

@Knarf: Supprimez-vous les guillemets présents dans votre message d'origine? – webbiedave