如何让小编知道动态属性?

How to let the editor know about dynamic properties?

属性在 CodeIgniter 中动态加载。

如何让编辑知道应该允许?

如果您知道要使用的动态属性的完整列表,您可以将它们添加为 @property docblock 注释 class,格式为 @property type name description

classic 的用例是 class 实现 __get 以延迟加载数据,或者在您的情况下由框架注入的依赖项。

/**
 * @property FormValidation form_validation Form validation object injected by CodeIgniter
 */
class Example {
    public function foo() {
        $this->form_validation->set_rules('blah', 'blah', 'blah');
    }
}

注意假设这些魔法属性是继承的,public,所以下面不会显示警告:

// Using magic property in child class
class ExampleChild extends Example {
    public function somethingElse() {
        $this->form_validation->set_rules('something', 'else', 'entirely');
    }
}

// Using magic property from outside class
$foo = new Foo;
$fv = $foo->form_validation;