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的FTP学习(三)
Oct 09 PHP
杏林同学录(八)
Oct 09 PHP
PHPnow安装服务[apache_pn]失败的问题的解决方法
Sep 10 PHP
php去除重复字的实现代码
Sep 16 PHP
Codeigniter整合Tank Auth权限类库详解
Jun 12 PHP
thinkPHP简单实现多个子查询语句的方法
Dec 05 PHP
php微信公众号开发(4)php实现自定义关键字回复
Dec 15 PHP
laravel 5.1下php artisan migrate的使用注意事项总结
Jun 07 PHP
PHP检测一个数组有没有定义的方法步骤
Jul 20 PHP
php实现QQ小程序发送模板消息功能
Sep 18 PHP
thinkphp5使html5实现动态跳转的例子
Oct 16 PHP
laravel 解决groupBy时出现的错误 isn't in Group By问题
Oct 17 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 ci框架验证码实例分析
2013/06/26 PHP
PHP.vs.JAVA
2016/04/29 PHP
PHP开发实现微信退款功能示例
2017/11/25 PHP
PDO::quote讲解
2019/01/29 PHP
jquery判断checkbox(复选框)是否被选中的代码
2010/10/20 Javascript
js 实现css风格选择器(压缩后2KB)
2012/01/12 Javascript
JS.GetAllChild(element,deep,condition)使用介绍
2013/09/21 Javascript
JavaScript中检查对象property的存在性方法介绍
2014/12/30 Javascript
仅30行代码实现Javascript中的MVC
2016/02/15 Javascript
详解JS正则replace的使用方法
2016/03/06 Javascript
怎么限制input的text里输入的值只能是数字(正则、js)
2016/05/16 Javascript
基于JS实现的随机数字抽签实例
2016/12/08 Javascript
Vue.js 单页面多路由区域操作的实例详解
2017/07/17 Javascript
微信小程序实现文字跑马灯效果
2020/05/26 Javascript
Angular路由ui-router配置详解
2018/08/01 Javascript
vue中的watch监听数据变化及watch中各属性的详解
2018/09/11 Javascript
Vue项目报错:Uncaught SyntaxError: Unexpected token
2018/11/10 Javascript
一个Java程序猿眼中的前后端分离以及Vue.js入门(推荐)
2019/04/19 Javascript
Vue移动端用淘宝弹性布局lib-flexible插件做适配的方法
2020/05/26 Javascript
JavaScript实现简易计算器小功能
2020/10/22 Javascript
python学习教程之使用py2exe打包
2017/09/24 Python
python使用Plotly绘图工具绘制气泡图
2019/04/01 Python
python使用Pandas库提升项目的运行速度过程详解
2019/07/12 Python
Python hashlib和hmac模块使用方法解析
2020/12/08 Python
HTML5 Canvas 起步(2) - 路径
2009/05/12 HTML / CSS
介绍下Java中==和equals的区别
2013/09/01 面试题
运动会广播稿30字
2014/01/21 职场文书
关于毕业的中学校园广播稿
2014/01/26 职场文书
优秀班干部事迹材料
2014/01/26 职场文书
企业道德讲堂实施方案
2014/03/19 职场文书
《桃林那间小木屋》教学反思
2014/05/01 职场文书
运动会口号大全
2014/06/07 职场文书
模具专业求职信
2014/06/26 职场文书
欢迎词范文
2015/01/27 职场文书
WebRTC记录音视频流(web技术分享)
2022/02/24 Javascript
微信小程序 WeUI扩展组件库的入门教程
2022/04/21 Javascript