PHP面向對象程序設計之對象的遍歷操作示例
本文實例講述了PHP面向對象程序設計之對象的遍歷操作。分享給大家供大家參考,具體如下:
對象的遍歷和數組的遍歷一樣,對象的遍歷指的是實例屬性的遍歷。
下面遍歷出來的屬性,是在該范圍中的“可訪問屬性”(要考慮訪問權限)。
<?php class A{ public $p1 = 1; protected $p2 = 2; private $p3 = 3; static $p4 = 4; } $obj1 = new A(); foreach($obj1 as $key => $value){//$key表示對象的屬性,$value是其對應的值 echo "<br />屬性$key :" . $value; } ?>
運行結果:
屬性p1 :1
可見只有public
修飾的屬性才能遍歷,那如何使一個對象的所有屬性都遍歷?在類內部寫一個遍歷的方法即可。
<?php class 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(); ?>
運行結果:
屬性p1 :1
屬性p2 :2
屬性p3 :3
但靜態(tài)屬性不屬于對象,所以不能遍歷。
更多關于PHP相關內容感興趣的讀者可查看本站專題:《php面向對象程序設計入門教程》、《PHP數組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
相關文章
解決了Ajax、MySQL 和 Zend Framework 的亂碼問題
功夫不負有心人,花了將近一天時間,終于解決了Ajax 、MySQL 和 Zend Framework 的亂碼問題?,F在總結如下,以供參考。2009-03-03