joomla - PhpStorm - Joomla 项目中的未定义类

标签 joomla phpstorm undefined

我想在 Joomla 项目上使用 PhpStorm,但我不能在主 Joomla 类上使用“转到类声明”(Ctrl+B)。例如 JFactory::getApplication()

但是在自定义插件中使用我自己的功能,该选项效果很好。

那里可能有什么问题?

  • 我有 Joomla 支持插件。
  • 我有 docblock 插件。
  • 我试过使缓存无效。

最佳答案

遗留代码

您只需要它来处理遗留代码。随着命名空间的引入,大多数类名都发生了变化。

JFactory 是一个现在不存在的类——它已从核心中删除。为了兼容性,在运行时提供了一个类别名,因此 PHP 可以找到新的类。 PhpStorm(和其他 IDE)不知道这些别名(还有很多别名)。

stub

为了解决这个问题,Joomla 提供了一个 stub ,告诉 IDE 在哪里可以找到新类。就跑

$ php build/stubGenerator.php

这将在项目的根目录中生成一个包含正确信息的 stubs.php 文件。

新代码

对于新代码,不要使用那些旧的类名——而是使用它们的新名称。新类名使您的新代码更有可能在 Joomla! 上运行! 4.0.

关于joomla - PhpStorm - Joomla 项目中的未定义类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46964441/

相关文章:

joomla - 为什么是 Joomla! K2不支持中文搜索?

php - Joomla 应用程序与移动应用程序交互

intellij-idea - 在PhpStorm项目工具窗口中显示.idea文件夹

symfony - PhpStorm 7.1.3、XDebug 2.2.3、Symfony 2.4 - 未找到 WebTestCase

javascript - jQuery:我怎样才能绕过使用 if 语句来摆脱 "undefined"错误

javascript - 检查无效的 JavaScript 函数参数

joomla - Joomla 中的大型机

image - 如何在 Joomla 中调整图像大小?

PhpStorm 代码完成不显示核心类/扩展

javascript - 实现 isNil