JetBrains WebIDE: indication de type de variable PHP?
-
08-07-2019 - |
Question
Est-il possible d'indiquer à WebIDE qu'une variable a un certain type? Je dois itérer un tableau d'objets et il n'y a pas d'auto-complétion disponible. Cela aide dans ZendStudio:
/* @var ClassName $object */
Je sais qu'il existe une fonctionnalité dans JetBrains pour déclarer un tableau d'objets:
/**
* @return ClassName[]
*/
Mais cela ne fonctionne qu'avec le type de retour de la fonction.
La solution
/ * @var ClassName $ object * /
est un commentaire PHPDOC non valide et n'est pas analysé dans la version actuelle de Web IDE. Utilisez des doubles astérisques pour que cela fonctionne:
/** @var ClassName $object */
De plus, vous pouvez annoter $ array
dans poureach ($ array en tant que $ var)
avec / ** @var ClassName [] $ array * /
et le type $ var
seront déduits automatiquement.
Autres conseils
Comme déjà indiqué, PhpStorm utilisera des blocs phpdoc classiques:
/** @var ClassName $object */
Cependant, depuis 2.1 , il a également prend en charge Netbeans / Eclipse / Zend Annotations @var :
/* @var $object ClassName */
Veuillez noter que le commentaire commence par / *
plutôt que / **
(ainsi, il ne s'affichera pas si vous générez de la documentation avec phpdoc). De plus, les arguments sont échangés, bien que PhpStorm accepte n'importe quel ordre:
/* @var ClassName $object */
Enfin, ils peuvent précéder presque toutes les lignes de code arbitraires (techniquement, les blocs phpdoc sont limités à certains éléments).