Bonjour,
existe il un moyen de savoir si une methode est publique ou privée dans une classe en PHP ?
Bonjour,
existe il un moyen de savoir si une methode est publique ou privée dans une classe en PHP ?
Euh... en essayant de l'appeler depuis une autre classe ?![]()
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.
Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]
Bonjour,
C'est assez compliqué mais tu peux utiliser la réflection qui te permet de faire du reverse enginering sur tes classes/fonctions.
Exemple :
source : http://fr3.php.net/oop5.reflection
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 <?php class Counter extends Object implements Serializable { const START = 0; private static $c = Counter::START; public function count() { return self::$c++; } } // Create an instance of the ReflectionClass class $class = new ReflectionClass('Counter'); // Liste les méthodes de la classe Counter et écris le nom si est publique $methods = $class->getMethods(); foreach($methods as $method){ if($method->isPublic()){ echo $method->getName(); } }
Juste pour ma culture personnelle : quelle est l'utilité ?
Je me pose la meme question !
Un développeur connait forcemment la visibilité des méthodes de la classe qu'il utilise, du moins en php !!!
Partager