PHP面向对象程序设计之对象的遍历操作示例


Posted in PHP onJune 12, 2019

本文实例讲述了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 相关文章推荐
PHP6 先修班 JSON实例代码
Aug 23 PHP
PHP curl模拟浏览器采集阿里巴巴的实现代码
Apr 20 PHP
php dirname(__FILE__) 获取当前文件的绝对路径
Jun 28 PHP
php打造属于自己的MVC框架
Mar 07 PHP
thinkphp中连接oracle时封装方法无法用的解决办法
Jun 17 PHP
使用php伪造referer的方法 利用referer防止图片盗链
Jan 20 PHP
php获取域名的google收录示例
Mar 24 PHP
php对文件夹进行相关操作(遍历、计算大小)
Nov 04 PHP
php+mysql实现的二级联动菜单效果详解
May 10 PHP
CI框架整合widget(页面格局)的方法
May 17 PHP
PHP实现防盗链的方法分析
Jul 25 PHP
PHP赋值的内部是如何跑的详解
Jan 13 PHP
PHP面向对象程序设计内置标准类,普通数据类型转为对象类型示例
Jun 12 #PHP
PHP下用Swoole实现Actor并发模型的方法
Jun 12 #PHP
PHP面向对象类型约束用法分析
Jun 12 #PHP
PHP面向对象程序设计__tostring()和__invoke()用法分析
Jun 12 #PHP
php实现微信公众号创建自定义菜单功能的实例代码
Jun 11 #PHP
php转换上传word文件为PDF的方法【基于COM组件】
Jun 10 #PHP
php简单计算权重的方法示例【适合抽奖类应用】
Jun 10 #PHP
You might like
php中{}大括号是什么意思
2013/12/01 PHP
PHP提交表单失败后如何保留已经填写的信息
2014/06/20 PHP
浅谈PHP中JSON数据操作
2015/07/01 PHP
ThinkPHP删除栏目(实现批量删除栏目)
2017/06/21 PHP
PHP+JS实现的实时搜索提示功能
2018/03/13 PHP
PHP实现字符串大小写转函数的功能实例
2019/02/06 PHP
实现JavaScript中继承的三种方式
2009/10/16 Javascript
jquery常用技巧及常用方法列表集合
2011/04/06 Javascript
Textarea与懒惰渲染实现代码
2012/01/04 Javascript
让jQuery Mobile不显示讨厌loading界面的方法
2014/02/19 Javascript
js实现回放拖拽轨迹从过程上进行分析
2014/06/26 Javascript
javascript实现鼠标放上后下边对应内容变换的效果
2015/08/06 Javascript
JS图片压缩(pc端和移动端都适用)
2017/01/12 Javascript
angular.js 路由及页面传参示例
2017/02/24 Javascript
讲解vue-router之命名路由和命名视图
2018/05/28 Javascript
微信小程序开发之转发分享功能
2019/10/22 Javascript
JavaScript 面向对象程序设计详解【类的创建、实例对象、构造函数、原型等】
2020/05/12 Javascript
vue中实现图片压缩 file文件的方法
2020/05/28 Javascript
[02:51]DOTA2英雄基础教程 风暴之灵
2013/12/23 DOTA
[02:41]《西雅图我们来了》2015国际邀请赛出征全记录
2015/07/23 DOTA
python使用PyV8执行javascript代码示例分享
2013/12/04 Python
Python IDE Pycharm中的快捷键列表用法
2019/08/08 Python
使用Bazel编译TensorBoard教程
2020/02/15 Python
python DES加密与解密及hex输出和bs64格式输出的实现代码
2020/04/13 Python
Python如何将将模块分割成多个文件
2020/08/04 Python
Python批量修改xml的坐标值全部转为整数的实例代码
2020/11/26 Python
竞选部门副经理的自荐书范文
2014/02/11 职场文书
诉讼财产保全担保书
2014/05/20 职场文书
自我介绍演讲稿范文
2014/08/21 职场文书
领导干部作风建设总结
2014/10/23 职场文书
苏州园林导游词
2015/02/03 职场文书
2015年初三班主任工作总结
2015/05/21 职场文书
2016年感恩教师节活动总结
2016/04/01 职场文书
浅谈如何写好演讲稿?
2019/06/12 职场文书
Java框架入门之简单介绍SpringBoot框架
2021/06/18 Java/Android
2022新作动画《福星小子》释出宣传影片 加入内田真礼&宫野真守配音演出
2022/04/08 日漫