告诉PhpStorm开始在特定路径中查找文件

告诉PhpStorm开始在特定路径中查找文件,php,autocomplete,phpstorm,relative-path,code-hinting,Php,Autocomplete,Phpstorm,Relative Path,Code Hinting,我的项目结构如下所示: 在我的index.php中,我使用 <?php if (isset($_GET['site'])) { switch ($_GET['site']) { ... case 'abilities': include("./content/abilities.php"); break; ...

我的项目结构如下所示:

在我的
index.php
中,我使用

<?php
    if (isset($_GET['site'])) {
        switch ($_GET['site']) {
            ...
            case 'abilities':
                include("./content/abilities.php");
                break;
            ...
        }
    }
?>
它在浏览器中运行得非常好,但PhpStorm表示它找不到该类:

这很可能是因为它在
content
目录中搜索一个
model
目录,该目录中没有类
Ability.php

所以我的问题是,我如何告诉PhpStorm开始查找文件,就好像我的
能力.php
会像
index.php
一样位于
root
目录中一样


例如,为
abilities.php
设置一个备用路径,以开始查找文件或类似的内容。

如果您只是将文件添加到PHPStorm项目中,程序将接收它们。然而,我认为您真正想要的(可能没有意识到)可能是如何在PHP中使用
名称空间
。它类似于应用程序可以读取的程序目录结构。关于它的教程和官方PHP文档有很多。

您是否在PHPStorm中配置了项目结构?查找项目设置,您可以检查是否有项目设置,或者将目录标记为“源”。这将是您案例中屏幕截图中显示的父目录


屏幕截图适用于Java项目,但您可以用同样的方法告诉IDEA PHP项目在哪里查找源文件。

。。您的
require\u once()
/
开头,它告诉IDE“查找相对于当前文件/文件夹的文件”。根据你的文件夹结构,这显然是不正确的。在运行期间,PHP无法相对于当前文件夹找到它。。。因此,它开始从
include\u path
的所有文件夹中查找,并在其他位置(相对于项目根目录)找到它。您是否考虑过使用更正确的路径?注意:在您的特殊情况下,使用
。/
代替
。/
也应该解析路径如果我使用
。/
代替
它将在
PhpStorm
中正确解析,但是浏览器找不到文件,因为
abilities.php
的内容将加载到
index.php
中,并且
require_once(“../model/Ability.php”)将不正确。您对“使用更多正确路径”的含义是什么?以及对“使用更多正确路径”的含义是什么?没有第二解释的路径(例如,如果从一条路径自动加载失败,则将尝试第二、第三条路径等)。最好的方法是使用绝对路径,例如使用
\uuuu DIR\uuu
和相对于当前文件的路径。对您来说,它可能是
require_once(uuu DIR_uu.../model/Ability.php)
require_once ("./model/Ability.php");