如您所见,第一个require_once没有给出弱警告.后者确实如此,但我不明白为什么.有什么理由发生这种情况吗?该文件存在并包含一个类.如果它有用,这就是文件结构:
-| Project
-| Anomius
- Anomius.php (This is the included file)
-| Sites
-| Foo
- app.php (This is the file on the image)
Run Code Online (Sandbox Code Playgroud)
只需禁用产生警告的PhpStorm中的设置:
在Settings
搜索"悬而未决包括",这是下Editor
> Inspections
; PHP
> General
>Unresolved include
并取消选中该框.
这是一个较晚的答案,但截至目前(2021 年)PHPStorm 可以通过以下评论在更细粒度的基础上抑制警告:
/** @noinspection PhpIncludeInspection */
Run Code Online (Sandbox Code Playgroud)
您可以将其放在语句级别(位于相关行的正上方)、方法级别(位于语句所在方法的上方)或文件级别(位于标记之后的文件顶部<?php
)。
如果您使用其中一种快速操作,PHPStorm 会将注释放在适合您的位置。显然,您更喜欢什么,并且禁用警告仍然是一种选择,但我可能需要在不同的位置再次发出警告,只要它有效。
默认情况下,PHPStorm 只记住变量名称,而不记住值。因此,如果您开始输入$ano
,它会自动完成$anomius
,但它不知道$anomius
实际包含什么。
要让 PHPStorm 了解您的文件所在位置,请尝试以下操作:
$anomius = "your_file.php";
/** @define "$anomius" "/absolute/path/to/your/php/file" */
require_once($anomius);
Run Code Online (Sandbox Code Playgroud)