php5 可以在类中使用__construct()定义一个构造函数 具有构造函数的类 会在每次对象创建的时候 调用该函数 因此常用来对象创建的时候进行一些初始化工作。
class Car{
function __construct(0{
print "构造函数被调用\n";
}
}
$car = new Car(); //实例化的时候 会自动调用构造函数__construct 这里会输出一个字符串
在子类中如果定义了__construct 则不会调用父类的__construct, 如果需要同时调用父类的构造函数 需要使用parent:: __construct()显示的调用
class Car{
function __construct(0{
print "父类构造函数被调用\n";
}
}
class Truct extends Car{
function __construct(){
print "子类的构造函数的调用";
parent ::__construct();
}
}
$car = new Truck();
同样 php5 支持析构函数 使用__destruct()进行定义 析构函数值得是当某个对象的所有引用被删除 或者对象被显式的销毁时会执行的函数
class Car{
function __construct(){
print "构造函数被调用";
}
function __destruct(){
print "析构函数被调用";
}
}
$car = new Car(); //实例化时候会调用构造函数
echo '使用后,准备销毁car对象‘;
unset($car); //销毁时候会调用析构函数
当php代码执行完毕以后 会自动回收与销毁对象 因此一般情况下不需要显式的去销毁对象