Vérifiez si la classe a une méthode en PHP
Actuellement mon code ressemble à ça:
switch ($_POST['operation']) {
case 'create':
$db_manager->create();
break;
case 'retrieve':
$db_manager->retrieve();
break;
...
}
Ce que je veux faire est de vérifier si la méthode appelée $_POST['operation']
existe: si oui, alors l'appeler, else echo "erreur" Est-il possible? Comment puis-je faire cela?
source d'informationauteur heron
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser method_exists:
Si je fortement vous conseille de ne pas aller sur la programmation de cette façon...
Vous pouvez utiliser is_callable() ou method_exists().
La différence entre eux est que ce dernier ne fonctionne pas pour le cas, si
__call()
gère l'appel de la méthode.Utilisation
method_exists()
Vous pouvez utiliser
method_exists()
. Mais c'est une très mauvaise idéeSi
$_POST['operation']
est fixé à un peu de magie pour les noms de fonction (comme __set()), votre code va encore exploser. Mieux utiliser un tableau de noms de fonction.