【问题标题】:PhpStorm not recognising core PHPPhpStorm 无法识别核心 PHP
【发布时间】:2020-11-17 12:07:10
【问题描述】:

PhpStorm 无法识别核心 PHP。例如,它无法识别Exception,工具提示显示“Undefined class 'Exception'”。

我尝试过使缓存无效,但无济于事。我检查了一位同事的安装,他们似乎没有问题,在他们的Exception 课程上的Ctrl+Clicking 之后,它正确链接到Core_c.php,这对我来说不是这种情况。似乎我的 PhpStorm 没有使用 PHP 插件/库,我不知道为什么。

我已尝试将 PhpStorm 重新安装到最新版本,升级我的所有软件包。我什至确定 php.jar 插件确实存在,它是:

/opt/phpstorm/plugins/php/lib/php.jar

并且在 PhpStorm 中启用了 PHP 插件。

我在使用 PhpStorm 时遇到的另一个问题是,每当我键入函数名称时,它都不会提示它们。我们将不胜感激,如果需要,我可以提供更多信息。

【问题讨论】:

  • 你在使用命名空间吗?在 Exception 前写“\”(例如catch(\Exception $e)
  • 是的,我们使用的代码位于我团队中的每个人都使用的共享私有 subversion 存储库中,对此问题没有任何问题。
  • 最后一个,实际idea.log 就足够了——确保它是最新的(你可以关闭 IDE;删除那里的所有日志/文件;启动 IDE——等到它加载并尝试Ctrl+单击 & 代码完成;然后关闭 IDE 并共享该日志文件。)您能否还显示您的 .php 文件的外观(不工作的那个)。理想情况下是整个 IDE 窗口——使用默认未修改的颜色模式。 P.S. 如果有的话 - 您可以备份和删除 IDE 范围的设置并从头开始(最后的选择)
  • OK ...我可以在这里建议两种可能的解决方案:1)github.com/JetBrains/phpstorm-stubs repo 下载 php 存根并使用该字段指向本地版本..或者只是将其添加为“包含路径”2) 从头开始​​(关闭 IDE;备份和删除 IDE 范围的设置;启动 IDE 并且不要从旧版本导入设置)。这样的设置将在~/.Phpstorm2016.3typically be
  • 谢谢,我会这样做的。我下载了存根并将它们作为路径包含在我的项目中,这似乎解决了我的问题。也许这是当前版本的问题 - 我可能会降级到以前的版本。再次感谢。

标签: php phpstorm


【解决方案1】:

如果 PhpStorm 2020.1 或更高版本出现相同问题, 这是以前报告的问题,使缓存无效不再有帮助。

here 所述,解决方案是:

  1. 关闭IDE
  2. 找到 PhpStorm 2020.2 在您的计算机上存储索引/缓存的文件夹(见下文)
  3. 删除该文件夹(因为标准的“无效缓存”在这里没有帮助)
  4. 启动 IDE

不同操作系统的缓存文件夹的典型位置:

  • 窗口:%USERPROFILE%\AppData\Local\JetBrains\PhpStorm2020.2\caches
  • Linux:~/.cache/JetBrains/PhpStorm2020.2/caches
  • macOS:~/Library/Caches/JetBrains/PhpStorm2020.2/caches

https://youtrack.jetbrains.com/issue/WI-54626

【讨论】:

  • 在我看来,这应该被标记为解决方案。
  • 从此解决!
【解决方案2】:

如果你正在使用 7.1 以下的 php,Exception 将不起作用,因为它没有实现 Throwable 类。使异常起作用的唯一方法是扩展 Exception 类。我还要做的是在异常之前加一个斜杠。喜欢throw new \InvalidArgumentException。希望这对你有用。祝你好运

【讨论】:

    【解决方案3】:

    我认为我们应该在这里考虑一些事情。您使用的是什么版本的 PHP。并非所有版本的 PHP 都支持 Exception 并且命名空间确实很重要,除非您使用的依赖项管理器可能配置了其命名空间,但如果您是从头开始构建,您可能需要考虑命名空间和 PHP 版本

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-16
      • 2020-10-19
      • 2017-07-24
      • 2019-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-27
      相关资源
      最近更新 更多