【问题标题】:How to fix namespace not being determined in new folders project?如何修复未在新文件夹项目中确定的命名空间?
【发布时间】:2014-11-14 05:32:13
【问题描述】:

我从 phpstorm7 升级到 phpstorm8。现在,每当我在现有文件夹中创建新的 PHP 类时,都会正确插入命名空间。然而,当我创建一个空文件夹并在其中创建一个新类时,命名空间是空的,我必须手动添加它。

在图片中:

  1. 现有文件夹具有命名空间:
  2. 同一项目中的新文件夹缺少命名空间。

如何告诉 phpstorm 始终自动生成当前命名空间?

【问题讨论】:

  • 很难说哪里出了问题.. 但很可能您没有将某些文件夹标记为命名空间根目录。请显示Preferences | Directories 的屏幕截图(因为您使用的是 Mac)。 P.S. 如果您还没有设置它们,您也可以尝试Code | Detect PSR-0 Namespace Roots
  • 这是一个旧帖子,但自从我遇到它,我想其他人也可能。我设法通过进入Settings > Project: xxx > Directories 并单击我的src 目录旁边的小“P”并为我的项目设置一个根命名空间来解决此问题。
  • @RobinKanters 感谢您指出这一点。您可以添加它作为我投票的答案,即使这不是我最初的问题。我刚刚遇到了类似的情况,无论我尝试什么,默认命名空间在一个项目中总是错误的,并且您评论中提供的解决方案有所帮助。

标签: php configuration namespaces phpstorm


【解决方案1】:

有时 PhpStorm 无法为您的源目录正确检测到适当的命名空间。

您可以尝试通过进入Settings > Project: xxx > Directories,单击src/ 目录旁边的小“P”并为您的项目设置一个根命名空间来解决此问题。

(您可能没有在右侧面板中列出那么多目录,具体取决于项目的复杂性)

【讨论】:

  • 要自动执行此操作,您可以使用名为“将 IDE 设置与 composer.json 同步”的设置。它支持 PSR-0 和 PSR-4。请注意,启用此选项也会影响其他一些设置(但它们很有用)。
猜你喜欢
  • 2014-04-14
  • 1970-01-01
  • 2023-02-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-04
  • 2018-01-08
相关资源
最近更新 更多