Salut,
Tout d'abord, Je viens de mettre à jour le Builder avec la nouvelle version et encore une fois tu déchires...
Venons en au sujet, je reprends dans un vieux projet des modules que j'avais créé y'a quelques années. L'un de ces modules exploite la fonction "getModuleList"
J'ai un doute sur l'origine de cette fonction, je ne sais plus si elle de moi ou de toi , car je ne l'a trouve pas dans la dernière mouture du framework.
Code php : 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
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 /** * Retourne toutes les actions public de chacun des modules * @param array $tExclusion nom des modules à exclure de la liste * @return array */ public static function getModuleList($tExclusion= array()) { $tModule=array(); $oDir=new _dir('../module'); //recuperation liste objet repertoires $tDir=$oDir->getListDir(); foreach($tDir as $oDirModule){ $tMethodes=array(); //Si l'un des modules termine par Trash on l'ignore if(substr($oDirModule->getName(),-5)=='Trash'){ continue ; } $sModuleName= 'module_'.$oDirModule->getName(); //on exclue le/les modules que l'on veut ignorer if(in_array($sModuleName,$tExclusion)){ continue; } $sNameModule = substr($sModuleName,7); //on instancie $oModule=new $sModuleName(); //on demande la liste des methodes public $tMethods=get_class_methods($oModule); foreach($tMethods as $sMethod){ //on exclue les methodes __get, __set if(substr($sMethod,0,2)=='__'){ continue ; } //on garde que les methodes commencant par _ (signe des actions) if(substr($sMethod,0,1)!='_'){ continue ; } $tMethodes[]=$sNameModule.'::'.substr($sMethod,1); } $tModule[$sModuleName]=$tMethodes; } return $tModule; }
Elle se trouvait être pour ma part dans la class_root.php.
Si ce n'est pas une de tes conceptions je dois tout de même l'exploiter pour mon futur code et j'ai toujours un trou de mémoire sur comment surcharger une class afin de ne pas parasiter une source.
Peux-tu m'apporter tes lumières
Merci,
Partager