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; //静态属性 function showAllProperties(){ foreach($this as $key => $value){ echo "<br />属性$key :$value"; } } } $obj1 = new A(); $obj1->showAllProperties(); ?>
运行结果:
属性p1 :1
属性p2 :2
属性p3 :3
但静态属性不属于对象,所以不能遍历。
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
相关文章
解决了Ajax、MySQL 和 Zend Framework 的乱码问题
功夫不负有心人,花了将近一天时间,终于解决了Ajax 、MySQL 和 Zend Framework 的乱码问题。现在总结如下,以供参考。2009-03-03
最新评论