程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> php引用與繼承教程

php引用與繼承教程

編輯:PHP綜合

為了使這個系統更強大,我們不希望所有用戶在我們組具有相同的地位。有些用戶需要管理員,其他主持人,和其他普通用戶只。我們怎麼能考慮到這一點在我們的物體?答案是繼承-的能力一類的繼承方法和屬性從另一個類別。首先,讓我們來看看繼承代碼:

/* Kirupa has admin powers */
$kirupa = new Admin( array( 'name' => 'Kirupa' ) );
echo $kirupa->getName().'<br />';// Kirupa
echo $kirupa->getAdmin(); // Administrator
  
/* Regular does not have admin powers */
$regular = new User( array( 'name' => 'Regular' ) );
$regular->getAdmin(); // breaks our code
  
/* Normal User class */
class User {
private $name;
function __construct( $attribs ) {
 $this->name= $attribs['name'];
}
function getName() {
 return $this->name;
}
}
  
/* Admin is a User, but with additional functionality */
class Admin extends User {
function getAdmin() {
 return 'Administrator';
}
}

正如你可以看到,我們的管理對象繼承了功能的用戶級使用關鍵字擴展。最重要的是,我們的管理是提供了一些額外的功能。在這種情況下,我們的用戶級被稱為超。在PHP中,一類只可繼承父之一。還有更多細微的繼承,但本教程將只支付基本知識。在一個更現實的情況下,我們將更多的功能代碼僅管理員。也許就像:

/* Additional functionality for just Administrators */
class Admin extends User {
function banUser( $id ) {
 /* code to ban user */
}
function unbanUser( $id ) {
 /* code to unban or activate user account */
}
//...
}

為了時間和重點,這些方法並沒有真正得到編碼。但是,這應該給你一些深入了解如何繼承的作品,為什麼它可以是有益的。

繼續在少數離別的話和方向。

分詞

到現在為止,你應該了解對象,如何創建它們,以及如何進入其屬性和方法。此教程絕非無所不包。事實上,這僅僅是冰山的一角,目的是這樣。為進一步讀,我建議PHP5 :對象,模式,與實踐的馬特Zandstra 。此外,你可以閱讀對象提供的文件上php.net 。

正如你開始了解更多的面向對象和你的PHP代碼變得更加面向對象,你會發現更多的代碼重用,並最終節省時間和能源。預現有的代碼資源,如梨和PHPClasses.org將變得越來越有用。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved