Php 访问抽象类中属性的修饰符

Php 访问抽象类中属性的修饰符,php,oop,abstract-class,access-modifiers,Php,Oop,Abstract Class,Access Modifiers,虽然我为PHP开发对象已经有一段时间了,但抽象类对我来说有些陌生。根据我的理解,当我想要定义我自己或其他开发人员要遵循的方法列表时,我会使用一个抽象类,同时还提供一些基本方法来构建 然而,似乎没有办法在抽象类中定义属性,我觉得这很奇怪。以下面的代码为例: abstract class Gateway { abstract public function process(); public function set_gateway_key( $key ) {

虽然我为PHP开发对象已经有一段时间了,但抽象类对我来说有些陌生。根据我的理解,当我想要定义我自己或其他开发人员要遵循的方法列表时,我会使用一个抽象类,同时还提供一些基本方法来构建

然而,似乎没有办法在抽象类中定义属性,我觉得这很奇怪。以下面的代码为例:

abstract class Gateway {

    abstract public function process();

    public function set_gateway_key( $key ) {

          $this->key = $key;

    }

}
这种类型的密钥通常是您想要限制访问的,以便运行某种验证。你可能还可以想象其他一些场景。但是,您必须依赖扩展此抽象类的开发人员来设置此访问修饰符


我错过什么了吗?还是没有办法做到这一点?

抽象类可以有属性

abstract class AbstractClass {
    protected $key;

    public function setKey($key) {
        $this->key = $key;
    }
}

抽象类可以有属性

abstract class AbstractClass {
    protected $key;

    public function setKey($key) {
        $this->key = $key;
    }
}

对我来说很好,你使用的是什么版本的PHP?做了一个很好的工作,对我来说,什么版本的PHP你正在使用?做了一个@dev空居住者谢谢你-好笑的是,我在谈论抽象类时没有在类上加上“抽象”!!!好了,给你。我想我应该先试试。谷歌并不总是回答问题的最佳地点……如果这回答了你的问题,请单击上下投票箭头旁边的复选框:-)是的,我必须等待一定时间才能回答。我抓到你了lol@dev-空居住者谢谢你-好笑的是,我在谈论抽象类时没有在类上加上“抽象”!!!好了,给你。我想我应该先试试。谷歌并不总是回答问题的最佳地点……如果这回答了你的问题,请单击上下投票箭头旁边的复选框:-)是的,我必须等待一定时间才能回答。我抓到你了,哈哈