[英]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.