本文實(shí)例講述了PHP面向?qū)ο蟪绦蛟O(shè)計(jì)之對(duì)象的遍歷操作。分享給大家供大家參考,具體如下:
對(duì)象的遍歷和數(shù)組的遍歷一樣,對(duì)象的遍歷指的是實(shí)例屬性的遍歷。
下面遍歷出來(lái)的屬性,是在該范圍中的“可訪(fǎng)問(wèn)屬性”(要考慮訪(fǎng)問(wèn)權(quán)限)。
<?phpclass A{ public $p1 = 1; protected $p2 = 2; private $p3 = 3; static $p4 = 4;}$obj1 = new A();foreach($obj1 as $key => $value){//$key表示對(duì)象的屬性,$value是其對(duì)應(yīng)的值 echo "<br />屬性$key :" . $value;}?>運(yùn)行結(jié)果:
屬性p1 :1
可見(jiàn)只有public修飾的屬性才能遍歷,那如何使一個(gè)對(duì)象的所有屬性都遍歷?在類(lèi)內(nèi)部寫(xiě)一個(gè)遍歷的方法即可。
<?phpclass A{ public $p1 = 1; protected $p2 = 2; private $p3 = 3; static $p4 = 4; //靜態(tài)屬性 function showAllProperties(){ foreach($this as $key => $value){ echo "<br />屬性$key :$value"; } }}$obj1 = new A();$obj1->showAllProperties();?>運(yùn)行結(jié)果:
屬性p1 :1
屬性p2 :2
屬性p3 :3
但靜態(tài)屬性不屬于對(duì)象,所以不能遍歷。
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選