Pergunta

Existe uma maneira de sugerir WebIDE que uma variável tem algum tipo? Eu tenho que iterar um array de objetos, e não há auto-completar disponível. Isso ajuda na ZendStudio:

/* @var ClassName $object */

Eu sei que há uma característica em JetBrains para declarar uma matriz de objetos:

/**
 * @return ClassName[]
 */

Mas isso só funciona com tipo de retorno da função.

Foi útil?

Solução

/* @var ClassName $object */ é um comentário phpdoc não válido e não é analisado na versão atual do Web IDE. Use asteriscos duplos para torná-lo trabalho:

/** @var ClassName $object */

Além disso, você pode anotar $array em foreach($array as $var) com /** @var ClassName[] $array */ e tipo $var será deduzido automaticamente.

Outras dicas

Como já salientado, PhpStorm irá usar blocos PHPDoc regulares:

/** @var ClassName $object */

No entanto, desde 2.1 também suportes Netbeans / Eclipse / Zend @var anotações :

/* @var $object ClassName */

Por favor, note o comentário começa com /* em vez de /** (assim ele não vai aparecer se você gerar a documentação real com phpdoc). Além disso, os argumentos são trocados, embora PhpStorm aceita qualquer ordem:

/* @var ClassName $object */

Por último, mas não menos importante, eles podem preceder quase qualquer linha arbitrária de código (tecnicamente, blocos PHPDoc estão restritos a determinados artigos).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top