有没有办法让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,我正在寻找的是解决方法的建议。
答案 0 :(得分:0)
IDE需要知道这些常量,以免抱怨它们。这意味着它们必须在" normal"中定义。方式(实际值无关紧要,只要它们不用于include / require语句中的文件名/路径)。
建议:编写创建此类myconstants.php
文件的自定义脚本,以正常方式定义它们(因为所有这些常量由用户定义并存储在DB中,您必须获取他们来自DB自己)..并在使用PhpStorm中的代码之前运行此脚本(以更新生成的文件)。