本文章詳細的介紹一下關於PHP5類中的屬性與類方法,有需要學習的朋友可參考訊息。
PHP5類方法
過程:過程是編製程式時定義的一個語句序列,用來完成某種指定的操作。
函數:函數有傳回值,也是定義的語句序列。
方法:在物件導向概念中,類裡面的一段語句序列。
一般來說,在物件導向概念中,函數和方法兩個名詞是通用的。
通過方法讀取屬性
下面的例子將屬性設定為private ,同時聲明了public的getName()方法,用來擷取屬性$name的值,調用getName()方法就會通過 return $this->name 返回 $name 的值。
| 代碼如下 |
複製代碼 |
class Person { private $name = “NoName”; //private成員$name public function getName() { return $this->name; } } $newperson = new Person(); echo ” ” . $newperson->getName(); ?> |
注意:這裡,方法內部調用區域屬性時,使用 $this->name來擷取屬性。在這個例子中,設定了公開的getName()方法,即使用者只能擷取$name, 而無法改變他的值。這就是封裝的好處。
封裝指的是將對象的狀態資訊(屬性)和行為(方法)捆綁為一個邏輯單元的機制。
PHP5中通過將資料封裝、聲明為私人的(private),再提供一個或多個公開的(public)方法實現對該屬性的操作,以實現下述目的:
防止對封裝資料的未經授權的訪問。使用者只能通過事先定製好的方法來訪問資料,可以便地加入控制邏輯,限制對屬性的不合理操作;
有利於保證資料的完整性;
便於修改,增強代碼的可維護性;
方法的參數
通過方法定義時的參數,可以向方法內部傳遞變數。
如下第5行,定義方法時定義了方法參數$_a。使用這個方法時,可以向方法內傳遞參數變數。方法內接受到的變數是局部變數,僅在方法內部有效。可以通過向屬性傳遞變數值的方式,讓這個變數應用於整個對象。
| 代碼如下 |
複製代碼 |
class Person { private $a; function setA($_a) { $thia->a = $_a; } function getA() { return $this->a; } } $newperson = new Person(); $newperson->setA(100); echo $newperson->getA(); ?> |
如果聲明這個方法有參數,而調用這個方法時沒有傳遞參數,或者參數數量不足,系統會報出錯誤。如果參數數量超過方法定義參數的數量,PHP就忽略多於的參數,不會報錯。可以在函數定義時為參數設定預設值。 在調用方法時,如果沒有傳遞參數,將使用預設值填充這個參數變數。
| 代碼如下 |
複製代碼 |
class A { public $name = “tom”; } class Person { private $a; function setA($_a) { $this->a = $_a; } function getA() { return $this->a; } } $a1 = new A(); $p = new Person(); $p->setA($a1); echo $p->getA()->name; ?> |
屬性的使用:通過引用變數的-> 符號調用變數指向對象的屬性。
在方法內部通過 $this-> 符號調用同一對象的屬性。
| 代碼如下 |
複製代碼 |
class Person { public $name = “NoName”; //定義public屬性$name public $age = 20; //定義public屬性$age } $p = new Person(); //建立對象 echo ” ” . $p->name; //輸出對象$p的屬性$name echo “ ”; echo ” ” . $p->age; //輸出$age屬性 ?> |
PHP5類中的屬性
我們還可以改變屬性的值,當然要注意的改變屬性的值是通過public來修飾的
我們修改一下這個例子:
| 代碼如下 |
複製代碼 |
class Person { public $name = “NoName”; //公開變數$name public $age = 20; //公開變數$age } $p = new Person(); $p->name = “Tom”; //我是Tom $p->age = 25 ; //年齡25 echo ” ” . $p->name; //輸出名字 echo “ ”; echo ” ” . $p->age; //年齡 ?> |
建立一個Person的對象,改變這個對象的屬性。為它命名,查看它的名字。你就是機器裡面這個Person對象的上帝,按照你定義的規則,這個實實在在記憶體中的Person對象被建立了,而且它有了可以改變的屬性。
屬性的初值
在PHP5中,在屬性定義可以不設定初值,或者賦予以下紅色類型的初值。
PHP中簡單類型有8種,分別是:
四種標量類型:
布爾型(boolean)
整型(integer)
浮點型(float)(浮點數,也作“double”)
字串(string)
兩種複合類型:
數組(array)
對象(object)
最後是兩種特殊類型:
資源(resource)
http://www.bkjia.com/PHPjc/628913.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/628913.htmlTechArticle本文章詳細的介紹一下關於PHP5類中的屬性與類方法,有需要學習的朋友可參考訊息。 PHP5類方法 過程:過程是編製程式時定義的一個語句序...