J'ai une méthode déclaré comme ceci
j'ai ce genre de fonction un peu partout qui retourne un tableau d'objet et j'avoue, je n'ai pas envie de créer un objet collection pour chaque classe (en Delphi, je n'aurais pas eu de scrupule car c'est moins pénible que le transtypage, en PHP, j'ai des craintes si j'accumule classe sur classe, et puis un la fleme aussi de pondre les itérables...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 /** * ... * @return array of Shai_Machin_Bidule */ public function MaMéthode() ...
dans mon code appelant
J'ai essayé de faire comme je le ferais pour un membre d'une classe mais cela ne fonctionne pas !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $aTabLocal = $Obj->MaMéthode(); foreach($aTabLocal as $oObj) { // Dans Zend Studio, j'ai trouvé cette astuce durant le Dev $oObj instanceof Shai_Machin_Bidule; // a retirer au Commit bien sur, une fois le code terminé ! $oObj->(Cool j'ai la complétion) // ZS est malin de détecter le instanceof ... }
Existe-t-il un moyen pour que ZS comprenne le type de $oObj, peut-être en modifiant mon @return array ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 /** @var Shai_Machin_Bidule oObj */ /** @var oObj Shai_Machin_Bidule */ foreach($aTabLocal as $oObj) {
Je fais parti d'une équipe de 7 dev PHP, et l'on reprend de Zéro le développement de notre Générateur d'appli web, et l'on a donc bcp bcp de classe, vu que l'on fait l'effort de tout documenté, j'aimerais que l'auto-complétion suive ! Pour faciliter l'utilisation de notre Lib pour les développements suivants !
Partager