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 相关文章推荐
PHP模板引擎SMARTY
Oct 09 PHP
php 执行系统命令的方法
Jul 07 PHP
PHP 采集程序原理分析篇
Mar 05 PHP
PHP获取服务器端信息的方法
Nov 28 PHP
PHP解析RSS的方法
Mar 05 PHP
迪菲-赫尔曼密钥交换(Diffie?Hellman)算法原理和PHP实现版
May 12 PHP
php版微信公众平台实现预约提交后发送email的方法
Sep 26 PHP
Laravel中Facade的加载过程与原理详解
Sep 22 PHP
Laravel框架实现利用中间件进行操作日志记录功能
Jun 06 PHP
php fread函数使用方法总结
May 28 PHP
laravel Task Scheduling(任务调度)在windows下的使用详解
Oct 22 PHP
php 使用html5 XHR2实现上传文件与进度显示功能示例
Mar 03 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
PHP4实际应用经验篇(3)
2006/10/09 PHP
php日历[测试通过]
2008/03/27 PHP
详解php 使用Callable Closure强制指定回调类型
2017/10/26 PHP
PHP convert_cyr_string()函数讲解
2019/02/13 PHP
thinkphp5实现微信扫码支付
2019/12/23 PHP
非常不错的功能强大代码简单的管理菜单美化版
2008/07/09 Javascript
js弹出层(jQuery插件形式附带reLoad功能)
2013/04/12 Javascript
JS简单实现登陆验证附效果图
2013/11/19 Javascript
jQuery实现折线图的方法
2015/02/28 Javascript
jquery实现的代替传统checkbox样式插件
2015/06/19 Javascript
javascript日期计算实例分析
2015/06/29 Javascript
Js制作点击输入框时默认文字消失的效果
2015/09/05 Javascript
JS实现Select的option上下移动的方法
2016/03/01 Javascript
Bootstrap3制作搜索框样式的方法
2016/07/11 Javascript
Javascript中引用类型传递的知识点小结
2017/03/06 Javascript
解决Extjs下拉框不显示的问题
2017/06/21 Javascript
vue-cli3.0 特性解读
2018/04/22 Javascript
JavaScript中的几种继承方法示例
2020/12/06 Javascript
简单分析Python中用fork()函数生成的子进程
2015/05/04 Python
python对url格式解析的方法
2015/05/13 Python
windows下ipython的安装与使用详解
2016/10/20 Python
浅谈Python中range和xrange的区别
2017/12/20 Python
Python numpy 点数组去重的实例
2018/04/18 Python
浅谈Pandas 排序之后索引的问题
2018/06/07 Python
Python实现的KMeans聚类算法实例分析
2018/12/29 Python
利用Python正则表达式过滤敏感词的方法
2019/01/21 Python
Django重设Admin密码过程解析
2020/02/10 Python
python自动打开浏览器下载zip并提取内容写入excel
2021/01/04 Python
Python try except else使用详解
2021/01/12 Python
健康监测猫砂:Pretty Litter
2017/05/25 全球购物
英国泽西岛植物:Jersey Plants Direct
2019/08/07 全球购物
如何写毕业求职自荐信
2013/11/06 职场文书
班主任新年寄语
2014/04/04 职场文书
Python基础知识学习之类的继承
2021/05/31 Python
Python将CSV文件转化为HTML文件的操作方法
2021/06/30 Python
MySQL 计算连续登录天数
2022/05/11 MySQL