你能为一个类创建一个外部PHPdoc吗?

Hai*_*ood 7 php ide phpdoc

假设我有以下内容

class Something extends ClassWithMagicMethods{}
Run Code Online (Sandbox Code Playgroud)

通常我会为我知道存在的任何属性添加一个docblock,即使通过魔术方法访问也是如此

/**
 * @property string $someVar
 * @method SomeClass getSomeClass()
 */
class Something extends ClassWithMagicMethods{}
Run Code Online (Sandbox Code Playgroud)

哪个效果很好,但我想知道的是,我们是否可以将该docblock与类的定义分开.两种可能的用例:

  • 第三方软件包不包含docblock但我想从我的IDE中自动完成 - 我希望能够在某个地方添加我自己的docblock.
  • 扩展系统 - 在定义扩展的文件中,我想记录此扩展添加到类中的新属性.

我知道我可以在技术上创建一个ide_helper.php永远不会实际运行的虚拟文件 - 只是由IDE编制索引 - 不幸的是,这会导致任何体面的IDE抱怨我不想要的重复声明,因为它也会使代码导航速度变慢.

那么 - 是否可以通过从类定义中外部组合多个docblock来记录PHP类?

我在SO上提取的大多数结果只是记录了你使用它们的未知类型,这不是我需要的.IE:

/** @var Something $something */
$something = FactoryMethodThing::create('Something');
Run Code Online (Sandbox Code Playgroud)

小智 0

看看这是否可以帮助您:

phpdoc -d path/to/my/project -f path/to/an/additional/file -t path/to/my/output/folder
Run Code Online (Sandbox Code Playgroud)

来源:http ://docs.phpdoc.org/guides/running-phpdocumentor.html