Salut,
j'ai besoin d'appeler une fonction statique sur une classe non
instancié. Le nom de la fonction a appeler est connue(car définie par
une norme), mais le nom de la classe elle est en fonction d'un choix
utilisateur (et est donc dans une variable)
mon probleme est que cela me retourne un "parse error,unexpected
T_PAAMAYIM_NEKUDOTAYIM", j'ai essayer plein de syntaxe mais j'ai
toujours la même erreur. exemple :
class maclasse{
function mafonction(){ return 10;}
}
$class = "maclasse";
echo $class::mafonction(); //affiche un parse error
echo $class.::mafonction(); // affiche un parse error
echo "$class::mafonction();" // affiche maclasse::mafonction() comme un
texte normal
et j'ai dût encore essayer d'autres syntaxes mais ca marchait toujours
pas... comment faire?
pourtant un echo $monobjet->$unefonctionpasséenvariable(); ben ca marche
nikel... il doit bien y avoir un moyen pour que la classe puisse etre
mise dans une variable pareillement non ?
je tiens a preciser que je ne peut faire de if, switch ou autre, pour
tester quelle classe est appelé, car c'est un code qui recupere les noms
des classes déclaré dans un fichier personnalisable(et donc je n'ai
aucun moyen de savoir a l'avance le nom et le nombre de classes qu'il
contiendra une fois que l'utilisateur l'aura modifier chez lui).
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Bhaa Dhrymm
je donne la réponse car a force de chercher et de tourner le probleme dans ma tete j'ai ouvert les yeux sur l'evidence même (et au cas ou ca pourrais servir aux autres) j'avais pas pensé a : call_user_func(array($maclass,'mafonction));
je donne la réponse car a force de chercher et de tourner le probleme
dans ma tete j'ai ouvert les yeux sur l'evidence même (et au cas ou ca
pourrais servir aux autres)
j'avais pas pensé a :
call_user_func(array($maclass,'mafonction));
je donne la réponse car a force de chercher et de tourner le probleme dans ma tete j'ai ouvert les yeux sur l'evidence même (et au cas ou ca pourrais servir aux autres) j'avais pas pensé a : call_user_func(array($maclass,'mafonction));