PHPStorm和模块参考

时间:2013-01-05 19:26:47

标签: php module directory-structure phpstorm project-structure

我的PHP项目中有以下文件:

index.php
private/module1.php
private/module2.php

index.php引用module1.php这样:

require_once('private/module1.php');

轮到module1.php需要module2.php,所以它有以下几行:

require_once('private/module2.php');

我需要告知root的相对路径才能正常工作。我想这是因为 require_once 命令需要来自当前文档的路径,该路径恰好是index.php。问题是PHP Storm无法管理此引用。例如,它不会将字符串private/module2.php转换为超链接,也不会将其作为实际引用。

如何解决这个问题?

3 个答案:

答案 0 :(得分:4)

您只需要通过指定PhpStorm用于解析引用的包含路径来正确配置您的PhpStorm项目。

转到文件 - >设置 - > PHP。

您应该将项目根目录(index.php所在的目录)添加到包含路径列表中。

完成此操作后,PhpStorm应解析require_once('private/module2.php')中的路径。

此外,您可以将私有目录添加到PHP index.php 中某处通过set_include_path()使用的包含路径列表中。然后你可以从 module1.php 中调用require_once('module2.php')

同样,您必须将私有目录添加到PhpStorm使用的包含路径列表中,以使其能够解析此引用。

答案 1 :(得分:1)

您也可以使用基本网址。 喜欢

require_once($base_url . 'private/module2.php');

基本网址可以由您自己定义,也可以使用$ _SERVER变量来获取它 http://www.php.net/manual/en/reserved.variables.server.php

答案 2 :(得分:0)

PhpStorm无法提供参考,因为它正在寻找

index.php
private/module1.php
private/private/module2.php

module1.php应该只需要文件名module2.php

require_once('module2.php);