PhpStorm 2021.3 Help

在项目中配置 PHP 命名空间

PhpStorm 带有一个可配置的约定,它指定项目根文件夹也是包和命名空间的根。换句话说:项目根文件夹默认标记为Source并且在其下创建的每个目录都被视为一个单独的命名空间。这符合PSR-0,也称为自动加载标准,它规定 PHP 中的类和命名空间应该匹配目录和文件结构,反之亦然。

根据PSR-4,任何目录都可以显式分配命名空间前缀。有了这个项目结构,不同 PHP 框架中的自动加载器就可以互操作了。

自动检测命名空间根

当您打开包含至少一个具有命名空间的文件的项目时,PhpStorm 会显示一条消息,其中包含设置命名空间根的提议。

因此,当尚未配置命名空间根并且您创建一个类时,PhpStorm 建议配置命名空间根。

您还可以通过选择Code |来触发命名空间根检测。从主菜单中检测 PSR-0 命名空间根。打开的目录对话框显示项目根文件夹下的文件夹,项目根文件夹标记为Source,这意味着它是其中所有命名空间的根。通过单击确定接受设置或手动配置命名空间根,如下所述。

在配置内容根目录中的文件夹中了解有关标记文件夹的更多信息。

手动配置命名空间根

  1. 在“设置/首选项”对话框 ( Ctrl+Alt+S) 中,转到“目录” 。

  2. 打开的目录页面的右侧窗格显示项目中配置的所有内容根目录。通常,有一个内容根目录,即当前项目的根文件夹。

    中央窗格显示所选内容根目录下的所有文件夹。选择要作为命名空间根的文件夹,然后单击Sources

    配置多个源根是完全可以的:PhpStorm 将把它们中的每一个都视为命名空间根,并为它们下面的文件提供命名空间提示。例如,供应商文件夹的每个子文件夹都可以标记为命名空间根。在下面的示例中,我们有两个命名空间根:一个用于实际应用程序,一个用于供应商文件夹:

    ps_configure_namespace_roots.png
  3. 要根据PSR-4配置命名空间前缀,请单击编辑属性按钮相关源文件夹(命名空间根目录)旁边的 ,并在“编辑根属性”对话框中指定要使用的前缀。要将前缀也应用于自动生成的代码,请选中For generated sources复选框。

最后修改时间:2021 年 3 月 8 日