对象遍历|学习笔记

简介: 快速学习对象遍历

开发者学堂课程【PHP 进阶教程-由浅入深掌握面向对象开发-第二阶段:对象遍历】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/712/detail/12715


对象遍历


内容介

一、目标

二、概念

三、示例

四、小结


一、目标

理解对象遍历的概念和内容


二、概念

对象遍历:将对象中的所有属性以键值对的形式取出并进行访问,键值对有名字和值

1.对象是一种复合数据类型,对象中真正保存的内容是属性,所以遍历是遍历对象的属性

2.对象的属性本质也是一种键值对关系:名字=值

3.对象遍历就是利用 foreach 对对象中的属性进行取出解析

对象遍历遵循访问修饰限定符的限定:即类外只能遍历所有公有属性

foreach (对象变量 as [属性名变量=>]属性值变量){

#属性名变量代表取出的每个属性的名字

#属性值变量代表取出的每个属性的值

}


三、示例

1.使用 foreach 对对象进行遍历

类里有很多个属性,其中三个公有,一个受保护,一个私有。

#定义类

class Man{

public $name = 'LiLei' ;

public $height = 178;

public $weight = 140;

protected $age = 30;

private $money = 1000;

}

#实例化

$m = new Man();

#遍历

foreach($m as $k => $v){

echo sk . ' : ' . sv . '
';   # $k 为属性名,$v 为属性值

}

实例化之后为了不用再初始化,直接在类里对属性进行初始化。初始化之后就进行遍历输出对象

图片1.png

输出结果里有 name、height 和 weight,而 age 和 money 没有被输出,原因是当前操作虽然叫遍历但是本质是在对象掌握每一个数据取出来,而当前对象的操作是在外部,所以受保护和私有的是不允许在外部访问的。这就是对象的简单遍历。


四、小结

1、foreach 可以对对象像数组一样遍历,因为对象本身属性都是键值对

2、foreach 遍历对象遍历的是对象内部的所有公有属性(在类外:受访问修饰限定符的限制,如果在类的内部方法里访问,可以遍历出所有的属性)

图片2.png

在类内部可以遍历出所有的属性,因为在里面不受限制,在外部限制的原因是需要逐个去取,public 才能取,protected private 取不到,这是 foreach 的特性。

相关文章
【Multisim14.0】彻底卸载删除
【Multisim14.0】彻底卸载删除
1868 0
|
存储 算法 数据处理
数据的表现形式及其运算
在数据科学和信息技术的世界里,数据的表现形式及其运算占据了至关重要的地位。数据的表现形式决定了我们如何存储、访问和处理数据,而数据的运算则决定了我们如何从这些数据中提取有价值的信息。本文将深入探讨数据的几种常见表现形式以及它们的基本运算,并通过代码示例进行说明。
529 0
|
11月前
|
存储 安全 网络协议
HTTP 请求方法
【10月更文挑战第22天】HTTP 请求方法
402 2
|
监控 安全 网络安全
SOC:简介、功能及其优点
【8月更文挑战第19天】
1222 0
|
11月前
|
机器学习/深度学习 人工智能 算法
AI技术在医疗领域的深度应用与未来展望####
本文深入探讨了人工智能(AI)技术在医疗领域的多维度应用,从疾病早期诊断、个性化治疗方案制定到复杂手术辅助,展现了AI如何重塑医疗服务的面貌。通过分析真实案例与最新研究成果,本文揭示了AI技术提升医疗效率、精准度及患者体验的潜力,同时审视了当前面临的挑战与伦理考量,为未来医疗技术的发展提供了前瞻性的思考框架。 ####
|
SQL Go 数据库
【速存】深入理解Django ORM:编写高效的数据库查询
【速存】深入理解Django ORM:编写高效的数据库查询
259 0
|
人工智能 自然语言处理 测试技术
巨擘之舞:探索AI大模型的发展历程与特性比较
巨擘之舞:探索AI大模型的发展历程与特性比较
|
运维
老司机,思路就是清晰!Eth-Trunk无法转发流量竟然是这样定位的!
老司机,思路就是清晰!Eth-Trunk无法转发流量竟然是这样定位的!
184 0
|
编解码 人工智能 自然语言处理
让大模型理解手机屏幕,苹果多模态Ferret-UI用自然语言操控手机
【5月更文挑战第29天】苹果推出Ferret-UI,一个结合图像识别和自然语言处理的多模态大语言模型,允许用户通过自然语言指令操控手机。该系统能适应不同屏幕布局,识别UI元素并执行相应操作,有望变革手机交互方式,提升无障碍体验,并在测试和开发中发挥作用。但需面对屏幕多样性及准确性挑战。[论文链接](https://arxiv.org/pdf/2404.05719.pdf)
456 3
|
XML JSON API
阿里巴巴关键字搜索接口技术详解
阿里巴巴开放平台提供关键字搜索API,让开发者能高效检索商品信息。接口涉及注册获取API密钥、构建HTTP请求、发送请求并解析JSON或XML响应。功能包括商品查询、排序、筛选、分页及结果格式化。使用流程包括注册、理解文档、构建请求、处理响应和错误管理。注意事项包括遵守规则、关键字优化、高效使用筛选与分页,以及确保数据处理的准确性和跟踪官方更新。此API助力商家和开发者提升搜索效率和业务性能。
320 0