阅读量:112
PHP中的construct函数是一个特殊的方法,用于在实例化一个类的时候自动调用,用来初始化对象。它有以下几种用法:
- 基本用法:在类中声明一个__construct方法,当实例化这个类时,会自动调用该方法进行初始化操作。
class MyClass {
public function __construct() {
echo 'Object has been initialized';
}
}
$obj = new MyClass(); // 输出:Object has been initialized
- 带参数的构造函数:可以在__construct方法中传入参数,以便在实例化类时传入初始化参数。
class Person {
public $name;
public function __construct($name) {
$this->name = $name;
echo 'Hello, my name is ' . $this->name;
}
}
$person = new Person('Alice'); // 输出:Hello, my name is Alice
- 父类构造函数的调用:在子类中的构造函数中调用父类的构造函数,以完成父类的初始化操作。
class ParentClass {
public function __construct() {
echo 'Parent class initialized';
}
}
class ChildClass extends ParentClass {
public function __construct() {
parent::__construct();
echo 'Child class initialized';
}
}
$obj = new ChildClass(); // 输出:Parent class initializedChild class initialized
- 默认参数值:在构造函数中可以给参数设置默认值,当实例化类时如果没有传入参数,则会使用默认值。
class Person {
public $name;
public function __construct($name = 'Unknown') {
$this->name = $name;
echo 'Hello, my name is ' . $this->name;
}
}
$person1 = new Person(); // 输出:Hello, my name is Unknown
$person2 = new Person('Bob'); // 输出:Hello, my name is Bob