加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

php – 使用魔术__get()时,私有/受保护成员变量的代码完成

发布时间:2020-05-26 02:23:35 所属栏目:PHP 来源:互联网
导读:在使用具有私有或受保护成员变量的类时,如何在Zend Studio(或任何基于 Eclipse的IDE)上设置代码完成功能,而无需使用一组Getter的OR将成员vars设置为public. 例如: class Dog { protected $bark = woof!; public function __get($key) { if (isset($th

在使用具有私有或受保护成员变量的类时,如何在Zend Studio(或任何基于 Eclipse的IDE)上设置代码完成功能,而无需使用一组Getter的OR将成员vars设置为public.

例如:

class Dog {

    protected $bark = 'woof!';

    public function __get($key) {
        if (isset($this->$key)) {
            return $this->$key;
        }
    }

}

$Dog = new Dog();
echo $Dog->bark; // <-- I want the IDE to "know" that bark is a property of Dog.
魔法的代码完成方法可以通过在类的DocBlock中使用 @property和 @method注释来实现(而不是在方法文档中).
/**
 * @property string bark
 */
class Dog {
    /* ... */
}

$Dog = new Dog();
echo $Dog-> // will autocomplete now

请注意,实际代码和注释之间没有相关性. Zend Studio将显示您为@property设置的任何内容,而不管此属性是否存在.它也不会检查是否有一个魔术方法可用.

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读