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

Mic*_*hal 5 annotations autocomplete phpstorm

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

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

$modelInstance = new Model();
$modelInstance->name;
Run Code Online (Sandbox Code Playgroud)

当我键入$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
Run Code Online (Sandbox Code Playgroud)

我想在PhpStorm自动完成中拥有属性"text",但仅限于$modelInstance.不适用于类Model的每个实例.

Mic*_*hal 5

这是我基于 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
{
}
Run Code Online (Sandbox Code Playgroud)

现在,当我有类似的东西时:

/**
* @var ZboziDibiRow[]
*/
public $products;
Run Code Online (Sandbox Code Playgroud)

我将获得自动完成:

$zbozi = new Zbozi();
foreach ($zbozi->products as $key => $product) {
    $product-> ....
Run Code Online (Sandbox Code Playgroud)