class test_parent
{
public $v1;
function __construct()
{
$this->v1=' parent field v1 ';
}
function func()
{
echo ' parent_func called ';
}
}
class test_child extends test_parent
{
//子类无构造函数则执行父类构造函数,有则执行子类构造函数(不执行父类构造函数,若需执行要写parent::__construct())
public function get_parent_field()
{
return $this->v1; //取父类字段
}
public function func()
{
echo ' override parent_fun '; //覆盖父类方法
}
public function call_parent_func()
{
$this->func(); //调用func()方法的子类实现
parent::func(); //直接调用父类的func()方法
}
}
$c=new test_child();
echo $c->get_parent_field(); //输出 parent field v1
$c->call_parent_func(); //输出 override parent_fun parent_func called