如何告诉PhpStorm定义了一些变量

har*_*rry 2 php phpstorm yii2

我在PhpStorm中使用Yii2框架。

当我使用$this->render函数在具有一些变量的主文件中包含另一个代码片段时,我的问题出现在视图中。

代码本身可以完美运行,我只需要突出显示即可。

这是我的代码:

<?php
echo $this->render('commentsBlock', [
            "comments" => $comments,
            'deleteURL' => $deleteURL,
            'editURL' => $editURL,
        ]);
?>
Run Code Online (Sandbox Code Playgroud)

上面的代码呈现了commentsBlock.php,该目标文件的内容如下:

在此处输入图片说明 在此处输入图片说明

如您所见,PhpStorm认为变量在定义时未声明。

我知道我需要添加一些注释,以告知IDE确实存在var,但是到目前为止,我尝试过的工作没有奏效。

我这样做:

在此处输入图片说明

但这不是重点。

关于如何正确编写此注释部分以欺骗IDE以突出显示我的变量的任何想法?

Biz*_*ley 8

像这样使用vardoc:

/* @var $comments array */
Run Code Online (Sandbox Code Playgroud)

此语法与phpdoc标准略有不同(请注意变量名称和类型切换的位置),但已被IDE(包括PhpStorm)广泛认可。

有关更多参考,请参见此答案

  • 请检查一下:https://github.com/phpDocumentor/fig-standards/blob/master/proposed/phpdoc.md#824-var (2认同)