<?php
class A {
public $name;
function __construct() {
echo $this->name = "小強";
}
}
class B extends A { }
$bb = new B(); // 輸出:小強
?>
<?php
class A {
public $name;
function __construct() {
echo $this->name = "小強";
}
}
class B extends A {
function __construct() {
echo "BBBBBB 子類別";
}
}
$bb = new B(); // 輸出:BBBBBB 子類別
?>
<?php
class A {
function __construct() {
echo "父類別建構子 ";
}
}
class B extends A {
function __construct() {
parent::__construct(); // 或 A::__construct()
echo "子類別建構子";
}
}
$b = new B(); // 輸出:父類別建構子 子類別建構子
?>
__construct 即切斷繼承。parent::__construct()**。function A())在 PHP 7+ 已棄用,統一使用 __construct。若父類別建構子執行關鍵初始化(資料庫連線、配置載入等),子類別**務必**显式呼叫 parent::__construct(),避免遺漏導致難以除錯的錯誤。