PHPStorm Intellisense无法识别类中定义的常量

时间:2015-05-19 18:21:51

标签: phpstorm

有没有办法让PhpStorm intellisense获取这些动态定义的常量?鉴于下面的代码,PhpStorm给出了"未定义的常量SAMPLE_CONSTANT_THAT_WAS_DYNAMICALLY_DEFINED"错误信息。

class ExampleConfiguration
{
   private $configurationMapping;
   ...
   public function DefineConfigConstants()
   {
      foreach ($this->configurationMapping as $key => $value)
         define($key, $value);
   }
}

class ExampleClass
{
   public function Test()
   {
      print SAMPLE_CONSTANT_THAT_WAS_DYNAMICALLY_DEFINED;
   }
}

可以在此处跟踪此问题:https://youtrack.jetbrains.com/issue/WI-11390,我正在寻找的是解决方法的建议。

1 个答案:

答案 0 :(得分:0)

IDE需要知道这些常量,以免抱怨它们。这意味着它们必须在" normal"中定义。方式(实际值无关紧要,只要它们不用于include / require语句中的文件名/路径)。

建议:编写创建此类myconstants.php文件的自定义脚本,以正常方式定义它们(因为所有这些常量由用户定义并存储在DB中,您必须获取他们来自DB自己)..并在使用PhpStorm中的代码之前运行此脚本(以更新生成的文件)。