在PhpStorm中标记@see

马尔辛·纳比亚韦克

我有以下代码:

class A {

    /**
     * Splitter for words
     *
     * @var null|string
     */
    private $splitter = '-';

    /**
     * Desc...
     *
     * @param null|string $splitter   @see $splitter
     */
    function __construct(
        $splitter = null
    ) {
      // implementation
    }

}

$a = new A();

当使用CTRL+QinPhpStorm来查看类构造函数的文档时,我将看到:

null|string $splitter @see $splitter

我是在做错什么,还是应该配置PhpStorm以显示的描述$splitter here我希望这里显示Splitter for words或链接到$splitter成员,而不仅仅是@see $splitter

正如我检查的那样,那两个变量的名字没关系-即使构造器参数名称为$sPhpStorm仍然显示@see $splitter

懒人

首先:内联时(如您所做的那样),PHPDoc标记应被包围{},如下所示:@param null|string $splitter {@see $splitter}

其次: PhpStorm不会解析@param@return描述中的其他/内联标签;仅当@see位于单独的行中或位于主(方法)描述部分中时,才会解析它换句话说:内联@param描述将不起作用(非常不幸)。

在这方面,PhpStorm的行为类似于PhpDocumentor本身(使用2.6.1版进行了检查)。

码:

<?php

class PHPDoc_See
{

    /**
     * Splitter for words
     *
     * @var null|string
     */
    private $splitter = '-';

    /**
     * Desc...  {@see $splitter}
     *
     * @param null|string $splitter Bla-Bla {@see $splitter}
     */
    function __construct($splitter = null)
    {
        // implementation
    }
}

PhpDocumentor结果:

在此处输入图片说明

在这方面,PhpStorm的表现要好一些-至少@see在主要(方法)描述中进行了解析


唯一可行的解​​决方案(如我所见)是将@see标签放在单独的行上:

/**
 * Some Description
 *
 * @param null|string $splitter Bla-Bla
 * @see $splitter
 */

当然:您可以随时向“ PhpStorm的问题跟踪器”提交“功能请求”票证(我会投赞成票)..但考虑到PhpDocumentor在这方面的表现..我非常怀疑PhpStorm开发人员是否会尽快实施它(他们确实喜欢遵循与引用工具相同的行为)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章