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中文網。
以上是php中建構函式和析構函式有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!