如何使类变量自动可用于其子类?

时间:2016-09-12 21:47:44

标签: php

我有一个Application类,我还有一些扩展它的单独的类。如果我在父$variable课程中设置Application,如何让其子女自动使用?

class Application {
    public $variable;

    public function __construct() {
        $this->variable = "Something";
    }
}

class Child extends Application {
  public function doSomthing() {
    $mything = $variable." is cool";
    return $mything;
  }
}

我知道我可以将global $variable;放在我的doSomthing()方法中,但在我编写的每种方法中反复做一遍都是非常繁琐的。有没有办法在我所有的子类方法都可用的地方做到这一点? 谢谢。

1 个答案:

答案 0 :(得分:1)

您只需在__construct方法的variable课程中设置名为Application的媒体资源。

如果属性visibility permits(例如是公开的或受保护的),您可以使用potato访问任何子类方法中的属性$this->potato

class Application {
    public $variable;

    public function __construct() {
        $this->variable = "Something";
    }
}

class Child extends Application {
  public function doSomthing() {
    $mything = $this->variable." is cool";
    return $mything;
  }
}