我有一个个人的PHP框架,我维护并用于我所做的大部分工作。目前在主index.php
文件中,我有以下代码,可以从项目的任何位置访问核心应用程序类:
/**
* @return App
*/
function app() {
// Returns the main App class instance.
}
使用PHPDoc正确注释,以便在使用时,代码提示中将提供@property-read
声明或App
的其他公共成员:
在新版本发布之前,PhpStorm 总是知道App
的内容,并提供此代码提示。但是,现在代码提示不起作用,除非您与App
(顶级命名空间)或显式use App
位于相同的命名空间中,或者将所有调用前缀app()
作为{ {1}}。
即使代码提示在顶层之外无法使用,我们还有一个奇怪的是,快速文档实用程序非常清楚\app()
会返回app()
并链接App
的正确定义:
我已尝试将App
标记为"来源根"并更新我的public
以包含composer.json
public
autoload/psr4
块中的""
而不做任何更改:
"autoload": {
"psr-4" : {
"": ["public/", "app/src/"]
}
}
在这个阶段,我不确定:
use App
应该实际上存在以供检查员理解它是什么)。答案 0 :(得分:0)
看起来这个行为已在最近的版本中得到纠正(我刚升级到2016.1.2 Build #PS-154.1616
)。