繁体   English   中英

在PHP中的类之间传递数据

[英]Passing data between classes in PHP

几个问题:问题1:

在OOP PHP中,子类使用父类设置的var并在父类中设置变量的最佳方法是什么。

我想做的是在子类中运行一个函数,该函数使用父类中的变量之一。

我通过将要访问的变量设置为公共变量,并在调用函数时将其作为参数输入到子类中来完成此操作,但是如果我可以将其简单地添加到子类的函数中,那会更好。

然后,要使用该函数的结果在父类中设置变量,我已将该值返回到父函数的setter类中。 这一切都在起作用:

$parentClass->set_maxpages($childClass->setMaxPages($cparentClass->contents));

Q2:

当我实例化子类时,它将运行paren'ts构造函数。 如果子类具有自己的构造函数,则它是否覆盖parnt类的构造函数。

您可以通过$this->varname访问公共和受保护的父成员变量:

class Parent
{
  public $pub = 1;     // anybody can access this
  protected $pro = 2;  // Parent and its children can access this
  private $pri = 3;    // only Parent can access this
}

class Child extends Parent
{
  public function __construct()
  {
     // overrides parent's __construct
     // if you need to call the parent's, you must do it explicitly:
     parent::__construct();

     var_dump($this->pub); // 1
     var_dump($this->pro); // 2
     var_dump($this->pri); // null ... not set yet because it's private
  }

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM