Rumah > Artikel > pembangunan bahagian belakang > php中构造函数和析构函数有什么区别
php中构造函数和析构函数的区别是:1、构造函数可以接收参数,能够在创建对象时赋值给对象属性,析构函数不能带参数;2、创建对象时调用构造函数,析构函数是在销毁对象时自动调用的。
区别分析:
构造函数
具有构造函数的类会在每次创建对象时先调用此方法。
void __construct ([ mixed $args [, $... ]] )
构造函数可以接收参数,能够在创建对象时赋值给对象属性
构造函数可以调用类方法或其他函数
构造函数可以调用其他类的构造函数
举例
<?php class BaseClass { function __construct() { print "In BaseClass constructor\n"; } } class SubClass extends BaseClass { function __construct() { parent::__construct(); print "In SubClass constructor\n"; } } $obj = new BaseClass(); $obj = new SubClass(); ?>
析构函数
void __destruct ( void )
析构函数是在销毁对象时,自动调用,不能显示的调用
析构函数不能带参数
举例:
<?php class MyDestructableClass { function __construct() { print "In constructor\n"; $this->name = "MyDestructableClass"; } function __destruct() { print "Destroying " . $this->name . "\n"; } } $obj = new MyDestructableClass(); ?>
如果您想要了解更多相关知识,请访问php中文网。
Atas ialah kandungan terperinci php中构造函数和析构函数有什么区别. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!