首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 物件導向教學:繼承機制詳解與實作範例

     編輯:PHP 綜合知識

在建構大型系統時,我們需要依據角色賦予不同權限。PHP 的繼承機制允許子類別沿用父類別的屬性與方法,並可擴充專屬功能。本文透過「使用者」與「管理員」的經典案例,淺顯說明繼承的核心概念與實作技巧。

基本繼承結構

定義基礎 User 類別,再由 Admin 繼承並新增管理功能:

/* 一般使用者類別 */
class User {
    private $name;
    public function __construct($attribs) {
        $this->name = $attribs['name'];
    }
    public function getName() {
        return $this->name;
    }
}

/* 管理員繼承自 User,擁有額外權限 */
class Admin extends User {
    public function getAdmin() {
        return 'Administrator';
    }
}

/* 實例化測試 */
$kirupa = new Admin(['name' => 'Kirupa']);
echo $kirupa->getName() . '<br />'; // 輸出:Kirupa
echo $kirupa->getAdmin();             // 輸出:Administrator

$regular = new User(['name' => 'Regular']);
$regular->getAdmin(); // 錯誤:User 沒有 getAdmin() 方法

擴充管理員專屬功能

實務上可繼續在 Admin 中加入業務邏輯:

class Admin extends User {
    public function banUser($id) {
        /* 封鎖用戶的實作代碼 */
    }
    public function unbanUser($id) {
        /* 解封用戶的實作代碼 */
    }
    // 更多管理功能...
}

關鍵重點

  • PHP 採單一繼承:一個類別只能繼承一個父類別。
  • 子類別自動擁有父類別的 public 與 protected 成員。
  • 善用繼承可減少重複代碼,提升維護彈性。

進階學習建議參考《PHP 5: Objects, Patterns, and Practice》(Matt Zandstra 著)與 PHP 官方 OOP 文件。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved