PHP 遍历对象可见属性

PHP:遍历对象 阅读详情


前言

本文就介绍了PHP遍历对象的内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、遍历对象foreach

  • 使用foreach方法遍历对象的可访问的可见属性。
class MyClass{
   public $var1 = 'PHP';
   protected $var2 = 'Java';
   private $var3 = 'Python';
   static $var4 = 'Go';

   public function MyFun1(){
   	echo "MyClass-MyFun1<br>";
   }

   protected function MyFun2(){
   	echo "MyClass-MyFun2<br>";
   }

   private function MyFun3(){
   	echo "MyClass-MyFun3<br>";
   }

   static function MyFun4(){
   	echo "MyClass-MyFun4<br>";
   }

   function MyFun5(){
   	echo "MyClass-MyFun5<br>";
   	foreach ($this as $key => $value) {
   		echo $key . " => " .$value ."<br>";
   	}
   }
}

$foo = new MyClass();
foreach ($foo as $key => $value) {	//会访问这个类所有可见的属性,会输出 var1 => PHP
   echo $key . " => " .$value ."<br>";
}

echo "------------<br>";
$foo->MyFun5();		
//会进MyClass类的MyFun5方法,该方法循环输出可见属性,会输出 var1 => PHP var2 => Java var3 => Python
//由于在类的外部遍历,只能访问public的属性。
//所以可以在类里,定义一个方法,由类里的方法来访问public\protected\private属性,再由外部调用该方法。

PHP中遍历stdclass object的实现代码 从网上查到的方法是 用get_object_vars 把类类型转换成数组 然后在用 foreach 遍历即可 立即下载

相关推荐

电芯外观及体系设计(Cell Design)-①容量平衡设计(Cell Balance Design)

全面获取并正确解读客户需求,将需求进行分解和预判,结合公司现有资源、技术,给出设计方案。一个优秀的电芯设计方案,应该是稳健的,可操作的,满足客户需求的同时,并能为公司带来较多利润。电芯设计需同时考虑周期,性能,品质,加工性,成本,及安全与稳健性。设计人员时刻要有成本控制观念,但利润则是由公司战略所决定。

FDC1303864002的博客 1352

php中如何遍历类中所有的属性

php中如何遍历类中所有的属性。

qq_38966550的博客 387

基于python的超市历年数据可视化分析

包含:Order_Date Sales Quantity Profit year month。所有这些物品都在美国4个地区的49个州销售,来着793位客户的5009个订单。9994行,21列数据。

m0_74872863的博客 534

php类可以遍历,关于类:遍历PHP中的类

我有一个用于与数据库交互的包装器。为数据库中的每个表自动生成一个类,这扩展了一个基类,该基类包含用于与数据库进行交互的功能,例如: viewTable,viewForm,getRecordByID ...它的主要目标之一是利用自动完成功能,因此我不必记住字段名等,并使代码更安全且更不易出错。除了一点点之外,我对它非常满意:在我的代码中,为了生成HTML表单,我使用如下代码:$objInvoice ...

weixin_35513425的博客 302

MRI脑影像分析从哲学到技术:一文搞懂VBM预处理基本原理(全网最详细解析)

   分析大脑解剖学差异最常用方法之一是基于体素的形态学方法(voxel-based morphometry, VBM)。 VBM的基本思想是测量大脑组织,尤其是灰质的局部浓度的差异。在大脑的每个体素处进行操作,然后在两个或多个实验组之间进行统计比较,从而在受调查的组之间建立特定大脑区域中脑组织浓度的统计学显着差异。 VBM分析基于(高分辨率)MRI脑部扫描,涉及大量处理步骤,主要是空间归一化,分割,平滑和统计分析,最终结果是统计图,显示了各组之间组织类型明显不同的区域[^1]。 参考 [^1] ..

意疏的学习笔记 3万+

【NTN 卫星通信】使用地面网络和卫星网络接入的终端应用场景

卫星接入有广覆盖的特点, 可以改善地面接入网覆盖或无线条件差的地区(例如多径干扰)的服务可用性。对于高速移动中需要实时业务的终端,如IMS语音/视频会议,可以通过地面接入和卫星接入同时实现与5G系统的双连接,在地面接入网不可用的情况下获得连续可靠的业务。

weixin_43603524的博客 2558

java .class 实例对象_通过Class类获取对象(实例讲解)

通过Class对象获取对象的方式是通过class.newInstance()方式获取,通过调用默认构造参数实例化一个对象。/*** Created by hunt on 2017/6/27.* 测试的实体类* @Data 编译后会自动生成set、get、无惨构造、equals、canEqual、hashCode、toString方法*/@Datapublic class Person {priva...

weixin_39981360的博客 1044

基于STM32L4XX的环境光传感器(LTR-303ALS-01)应用程序设计

/ 状态寄存器的位[2:0]表示数据状态,例如位2为1表示新数据就绪[citation:6]#define LTR303_REG_DATA_CH0_LOW 0x8D // CH0数据低字节。#define LTR303_REG_DATA_CH0_HIGH 0x8E // CH0数据高字节。#define LTR303_REG_DATA_CH1_LOW 0x8F // CH1数据低字节。#define LTR303_REG_DATA_CH1_HIGH 0x90 // CH1数据高字节。

myron6688的博客 405

php中foreach遍历类对象的总结

foreach 遍历数组很常见,同样foreachye'ke

fanyilong的专栏 1万+

CKA-题库-简洁参考答案-反复练习20遍-必过!!!

新版CKA考试已于2020年9月1日正式上线! 考试模式:线上考试 考试时间:2小时 认证有效期:3年 软件版本:Kubernetes v1.19 重考政策:可接受1次重考 经验水平:中級 题目数量:17题 题库量小:随机的题目重复率极高 考试时可打开两个浏览器Tab,一个是考试窗口,一个用来查阅官方文档](https://kubernetes.io/docs/) 01 Task - 英文 Create a new ClusterRole named deployment-clusterrole tha.

随笔记录-分享&记忆 7315

小波变换完全指南:从原理到实践的深度解析

在信号处理领域,傅里叶变换长期以来一直是频域分析的主要工具。然而,傅里叶变换存在一个根本性的局限:它只能告诉我们信号中包含哪些频率成分,却无法告诉我们这些频率成分在什么时刻出现。这就像是你知道一首歌用了哪些音符,却不知道这些音符的演奏顺序。小波变换(Wavelet Transform) 应运而生,它完美地解决了这个问题。小波变换不仅能够提供频率信息,还能同时提供时间信息,实现了信号的时频联合分析。本文将带你从零开始,深入理解小波变换的原理、实现和应用。傅里叶变换的定义如下: 它使用正弦和余弦这样的全局基函数

电脑管家 209

php对象的遍历

<?php //遍历对象属性,通过foreach语句可以实现对象可见属性的遍历,但是不可见的属性只有通过类本身才能看到。 /* class MyClass { public $var1 ='value1'; public $var2 ='value2'; public $var3 ='value3'; protected $protected = 'protected var';

lisenlin341125的专栏 515

【ComfyUI报错解决】K采样器 mat1和mat2形状不匹配错误分析与修复 mat1 and mat2 shapes cannot be multiplied (77x2048 and 4096x

如果你在 ComfyUI 里遇到K采样器报错:mat1 和 mat2 shapes cannot be multiplied确认大模型和 LoRA 是否是同一版本(SDXL vs SD1.5,不能混用)。如果用了双 CLIP 加载器,要确认加载的类型和选择的模型类型是否匹配。加载→ 类型选flux加载 SDXL 专用的 clip/t5 → 类型选sdxl避免不同版本模型和 LoRA 混搭,保持一致性。模型+LoRA+CLIP 类型必须保持同一版本,不然就会报错。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 2408

PHP 遍历对象 迭代器接口Iterator

遍历一个对象 常见于foreach遍历,对象的可见属性会被遍历。属性名为key,值为value。 可见属性:就是可以当前上下文可以访问的该对象的属性。例如在一个类的外部创建一个该类的实例,foreach遍历该实例对象,可遍历的只有public属性。在该类的内部遍历$this,那么就可遍历的是所有public ,protected,private属性。 (静态属性不属于对象,因此不可遍历) //为了简洁,我用匿名类来创建对象,匿名类的写法在php7+开始支持。 $obj = new class{ pu

weixin_42676909的博客 298

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

php遍历对象属性_php中遍历对象的方法

* 遍历对象* 1.仅能遍历属性,方法不可遍历* 2.外部遍历仅能查看公共可见属性* 3.如果要查看全部属性,需要在类中创建外部接口方法来实现* 4.最终结果以关联数组格式呈现,使用foreach()语句进行遍历class Lecture{public $name = 'Peter Zhu';public $gender = '男';public $age = 30;public $course ...

weixin_29808375的博客 369

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

php+遍历对象方法,php遍历对象

PHP 5 提供了一种定义对象的方法使其可以通过单元列表来遍历,例如用 foreach 语句。默认情况下,所有可见属性都将被用于遍历。Example #1 简单的对象遍历class MyClass{public $var1 = 1;public $var2 = 2;public $var3 = 3;protected $protected = 'protected var';private $pr...

weixin_29304713的博客 326

PHP基础知识之遍历

遍历对象的时候,默认遍历对象的所有属性 classMyClass{public$var1='value1';public$var2='value2';public$var3='value3';protected$protected='protectedvar';private$private='private...

weixin_30546933的博客 74

php遍历对象属性_Laravel学习笔记之PHP对象遍历(Iterator)

说明:本文章主要讲述PHP的对象遍历(Iterator)知识点。由于Laravel框架中就在集合(Collection)中用到了对象遍历知识点,故记录并学习之。同时,作者会将开发过程中的一些截图和代码黏上去,提高阅读效率。Laravel中在基础集合类IlluminateSupportCollection、路由类中IlluminateRoutingRouteCollection和分页类中Illumi...

weixin_33461476的博客 368

[php]对象遍历

[对象遍历]

mizhenxiao的博客 474

php循环对象属性,遍历对象 - PHP 7 中文文档

遍历对象PHP 5 提供了一种定义对象的方法使其可以通过单元列表来遍历,例如用 [foreach](php7/control-structures.foreach)语句。默认情况下,所有[可见](php7/language.oop5.visibility)属性都将被用于遍历。Example #1 简单的对象遍历class MyClass{public $var1 = 'value 1';publi...

weixin_39569076的博客 292

php对象迭代

PHP5提供了一种迭代(iteration)对象的功能,就像使用数组那样,可以通过foreach来遍历对象中的属性。默认情况下,在外部迭代只能得到外部可见的属性的值。 代码: /*  * 对象迭代  */ class Iteration{     public $public01 = 'public01';     public $public02 = 'public02';

leedaning的专栏 1566

PHP循环数组的3种方式

PHP遍历数组的方法经常用到的有: for循环遍历 foreach遍历 each结合while、list遍历 for循环遍历 注意:for循环遍历只针对于索引数组,不能用于关联数组 /** * 1.for循环遍历-只能针对索引数组 */ $for_arr = [1, 2, 3]; $for_arr_len = count($for_arr); for($i = 0; $i < $for_arr_len; $i++) { echo $for_arr[$i] . PHP_E

hudeyong926的专栏 5003

php 文件迭代对象,php对象迭代

PHP5提供了一种迭代(iteration)对象的功能,就像使用数组那样,可以通过foreach来遍历对象中的属性。默认情况下,在外部迭代只能得到外部可见的属性的值。代码:/**对象迭代*/classIteration{public$public01 ='public01';public$public02 ='public02';public$public03 ='public03';privat...

weixin_42311349的博客 120

php的对象可以遍历吗,【php类与对象】遍历

本篇文章给大家分享的内容是关于【php类与对象】遍历 ,有着一定的参考价值,有需要的朋友可以参考一下遍历对象PHP 5 提供了一种定义对象的方法使其可以通过单元列表来遍历默认情况下,所有可见属性都将被用于遍历。Example #1 简单的对象遍历(foreach 遍历所有其能够访问的可见属性。)...

weixin_28782823的博客 148

php foreach()函数

foreach普通用法 自定义 foreach 遍历对象 foreach 有两种语法 foreach(array_expression as $value) statement foreach(array_expression as $key => $value) statement 在 $value 之前加上 & 来修饰修改的元素。此方法将 以引用赋值,而不是拷贝一个值 <?php $arr = array(1,2,3,4); foreach($arr as &$val

ly_jing的博客 318

PHP中的对象遍历技巧

PHP中的对象遍历 对象的遍历,主要是指遍历对象中的,对外部可见属性。实际上就是用访问限制符public声明的属性,这点大家肯定很熟悉了。并且,在php中,遍历对象居然与遍历数组一样,都可以用使用foreach语句。 好,下面用实例来说明: <?php class Demo { public $name; public $age; p...

weixin_34049948的博客 135
上一篇: PHP 重载 属性重载__set() __get() __isset() __unset() 方法重载__call() __callStatic()
下一篇: PHP Final关键词
VVIP______
博客等级 码龄6年 0粉丝 27原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值