PhpStorm属性注释,用于类的实例

时间:2016-07-29 10:50:05

标签: autocomplete annotations phpstorm

我知道我可以使用这样的PhpStorm注释:

/**
 * Class Model
 * @property string name
 */
class Model {};

$modelInstance = new Model();
$modelInstance->name;

当我输入$modelInstance-> PhpStorm会给我"姓名"在自动完成。

是否可以为类的实例创建自定义属性注释?

/**
 * Class Model
 * @property string name
 */
class Model {};

/**
 * @var Model $modelInstance @property text
 */
$modelInstance = new Model();
$modelInstance->text; //PhpStorm does not know about this property

我想拥有财产" text"在PhpStorm自动完成,但仅适用于$modelInstance。不适用于Model Model的每个实例。

1 个答案:

答案 0 :(得分:4)

这是我基于LazyOne的意见的解决方案。

/**
 *
 * Class ZboziDibiRow
 * @property int id
 * @property string name
 * @property string store
 * @property string uri
 * @property string manufacturer
 * @property string description
 * @property int price
 * @property string ean
 * @property string code
 * @property int available_in
 * @property string zbozi_category_id
 * @property string category_recursive_id
 */
class ZboziDibiRow extends DibiRow
{
}

现在我有类似的东西:

/**
* @var ZboziDibiRow[]
*/
public $products;

我将获得自动完成功能:

$zbozi = new Zbozi();
foreach ($zbozi->products as $key => $product) {
    $product-> ....