Аннотирование локальной переменной в php
Я использую Eclipse PDT и хочу комментировать локальную переменную с помощью Phpdoc.
Все, что я вижу, это то, что я могу аннотировать переменные/свойства класса с помощью @var
или даже
@property
, но как это возможно для локальной переменной?
Как я могу сделать что-то вроде этого?
function foo(){
/** @var Stock $a */
$a->save();
}
Ответы
Ответ 1
Стандарт Phpdoc не охватывает эти аннотации (он охватывает только свойства класса тегом @var
); однако это вполне возможно в Eclipse (например, PDT):
/* @var $variable Type */
^ ^ `--- type
| variable
|
`--- single star
Это также работает во всех других PHP IDE, таких как Netbeans или Phpstorm, что полезно, если вы обмениваетесь кодом с другими.
Пример кода:
<?php
/* @var $doc DOMDocument */
$doc->
Пример скриншота (Eclipse PDT (Indigo)):
![Eclipse PDT (Indigo)]()
Связанный вопрос и ответы:
Ответ 2
Это старый вопрос, но только для справки.
Вы должны включить оператор Use
для Type
в текущий файл, чтобы @var
работа с аннотацией
<?php
use YourVendor\YourBundle\Entity\ProductType;
...
/* @var $product_type ProductType */
$foo = $product_type->getName();