我目前正在PHPStorm中编写一个项目,并且编辑器解决了以服务器文档根为前缀的路径问题。这个例子可能是:
require_once($_SERVER["DOCUMENT_ROOT"] . "/file.php");
这将在服务器上进行评估,并且页面构建正确。然而,PHPStorm抱怨并说“未找到路径'file.php'”。我已经研究过这个问题,并在网上找到了this这样的线程来概述这种情况。我已经尝试按照建议设置资源根但没有运气。任何帮助或指导,为什么会发生这种情况将不胜感激。谢谢!
编辑:文档根目录评估我的笔记本电脑上的本地驱动器,我用于在本地Apache实例上调试 - “/ Users / Me / PhpstormProjects / MyProject”。此路径也设置为PHPStorm中的资源根。
答案 0 :(得分:6)
不支持$_SERVER["DOCUMENT_ROOT"]
的评估,目前无法以某种方式进行设置。
http://youtrack.jetbrains.com/issue/WI-3321 - 观看/加注明星以获得有关进展的通知。
如果您愿意稍微改变一下代码......您可以使用这种方法(如果您的单点输入应用程序效果最佳 - 例如,所有请求都通过{{1}路由或者类似的):
index.php
- 因为define('DIR_ROOT', __DIR__);
通常放在网站根目录中,它将指向与index.php
相同的文件夹。)$_SERVER["DOCUMENT_ROOT"]
如果您以这种方式包括课程 - 也许您应该使用自动加载器(不需要手动执行此操作)?
更新(2015年5月26日):
从PhpStorm v8.0.3开始支持 require_once(DIR_ROOT . "/file.php");
并且它已解析为项目根目录,因此如果您的Web服务器根位于实际的子文件夹中(例如{{1}它将无法正确解析。
答案 1 :(得分:0)
http://php.net/manual/en/ini.core.php#ini.include-path,将文档根添加到包含路径(echo $_SERVER["DOCUMENT_ROOT"];
)
也可以在运行时使用http://php.net/manual/en/function.set-include-path.php
执行此操作可能还想查看:http://www.jetbrains.com/phpstorm/webhelp/configuring-include-paths.html
答案 2 :(得分:0)
最新版本的PHPStorm EAP解决了这个问题。
您可以在此处获取最后一个EAP:https://confluence.jetbrains.com/display/PhpStorm/PhpStorm+Early+Access+Program
答案 3 :(得分:0)
PHP Storm 2020
文件->设置->语言和框架-> PHP->(制表符)分析
字段包含分析->在此处键入您的文件夹名称(例如www)。