IntelliJ IDEA 11中require_once()中未定义的PHP常量

时间:2012-11-01 16:21:25

标签: php zend-framework intellij-idea

我是IntelliJ IDEA 11的新手。我的Zend-Project的大部分PHP文件都是从以下内容开始的:

require_once(APPLICATION_PATH . '/businessobjects/Car.php');

IDE在此行中提到了两个警告:

  • 未定义的常量APPLICATION_PATH
  • 路径“businessobjects”未找到

作为后果,当我悬停“new Car()”时,IDE会告诉我“Undefined class Car”。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

解决方案

我在IntelliJ IDEA上遇到了另一个问题,已经讨论过here on StackOverflow(IntelliJ没有在项目树中显示任何文件夹)。在我将所有文件添加为单个“WebModule”并且IntelliJ完成索引所有这些文件夹和文件之后,它完美地找到了我的businessobjects和类“Car”的路径。

答案 1 :(得分:0)

路径问题与未定义的APPLICATION_PATH常量有关,因为它预先传递给require_once的路径。

可能ZEND希望你定义了APPLICATION_PATH常量,也许是这样的:

define('APPLICATION_PATH', __DIR__);

(参见:PHP Magic Constants

您还可以测试是否定义了该常量,如下所示:

if (!defined('APPLICATION_PATH')) {
    // it's not defined, so define it!
} else {
    // proceed as usual
}

我对IntelliJ IDEA / Zend不太熟悉,但是很可能缺少定义APPLICATION_PATH的配置文件。

另请参阅:Google search for zend config APPLICATION_PATH