php对象和数组的效率,PHP对象数组和一般数组区别
PHP中的foreach作为经常用到的函数,常常用来遍历数组,对于数组中的元素是值的情形(如一般常见型的数组),foreach只是将数组中的每份元素的值拷贝到each后面的变量,也就是对值本身的拷贝,对其值进行改变并不会影响到数组本身。
如: (推荐学习:PHP视频教程)$arr = array(1, 2, 3);
foreach($aa as $el){
$el = 100;
}
foreach($arr as $el){
echo $el;
echo "
";
} // 结果:1 2 3
但是如果是对象数组的情形,也就是数组元素均为对象时,此时each后面的变量是对对象引用的拷贝,对其进行的改变会直接影响到原数组本身。这点与上面情形很容易弄混。
如:$aa = new stdClass();
$aa->name = '张三';
$bb = new stdClass();
$bb->name = '李四';
$arr = array($aa, $bb);
foreach($arr as $element){
$element->name = 'qqyumidi';
}
foreach($arr as $el){
echo $el->name;
echo "
";
} // 结果:qqyumidi qqyumidi
php对象和数组的效率,PHP对象数组和一般数组区别相关推荐
- java 中遍历双列集合_获取单列集合,双列集合,数组的Stream流对象以及简单操作...
获取流对象 获取单列集合,双列集合,数组的流对象 单列集合获取流对象: 1.java.util.Collection接口中加入了default方法stream()获取流对象,因此其所有实现类均可通过此 ...
- 内置对象的API Array数组对象 String字符串对象 json字符串 JSON对象 js作用域及变量预解析 引用类型与值类型区别 共享引用 基本包装类型 数组去重
01-内置对象的API a.Date对象获取时间 b.Array对象数组加工 c.String对象字符串加工 d.json字符串的语法格式 e.JSON对象的字符串与对象转换应用 02-JS作用域 a ...
- Java常用知识点汇总(基础:数组,类与对象,接口与继承)
目录 数组 1.引用 2.增强型for循环 3.复制数组 arraycopy() 4.针对数组的工具类 Arrays 5.选择法排序 6.冒泡排序 7.练习-二维数组中的查找(剑指offer) 类与对 ...
- golang json转结构体中嵌套多个数组_ElasticSearch第六篇:复合数据类型-数组,对象...
在ElasticSearch中,使用JSON结构来存储数据,一个Key/Value对是JSON的一个字段,而Value可以是基础数据类型,也可以是数组,文档(也叫对象),或文档数组,因此,每个JSON ...
- 通过属性值从对象数组中获取JavaScript对象[重复]
本文翻译自:Get JavaScript object from array of objects by value of property [duplicate] This question alr ...
- Jackson:数组json字符串转对象集合(List)的两种方式
首先,创建个实体类Person import java.util.List;public class Person {private String name;private Integer age;p ...
- TP5.1查询用Db('不含表前缀')/Db::name('不含表前缀')/Db::table('含表前缀')返回数组;model()返回对象
TP5.1查询用Db(('不含表前缀')/Db::name('不含表前缀')/Db::table('含表前缀')返回数组:model()返回对象 all():可直接传数组查询 select():传数组 ...
- java 静态对象数组_Java静态方法和实例方法 java中的数组作为形参传入
原标题:Java静态方法和实例方法 java中的数组作为形参传入 Java静态方法和实例方法 java中的数组作为形参传入 Java虚拟机 启动一个Java程序的时候,会诞生一个虚拟机实例,当程序关闭 ...
- JS 将有规律的数组,转换成对象数组
在工作中经常会遇到解析数据的问题,今天需要用js实现,将一个含有一些有规律数据的数组,解析成对象数组. 比如: ['123','er','456', 'fr'] ==>[{id: '123', ...
最新文章
- 亚马逊科学家Nikko Ström:将人工智能助理日常化的梦想照进现实
- Bilibili 笔试扭蛋器----回溯dfs 9.21
- 《Imperfect C++中文版》——2.1 对象生命周期
- Binary classification - 聊聊评价指标的那些事儿【实战篇】
- reactjs render props向组件内部动态传入带内容的标签
- Openstack迁移DDH最佳实践
- IDEA打jar包时出现manifest.mf already exists in vfs解决办法
- mysql ---- DDL(了解)
- P2:图像分类:KNN与线性分类器
- 区块链需要用到mysql吗_区块链和传统数据库有什么区别?
- 学习使用Mathematic
- MKVToolNix v72.0 MKV视频封装工具
- 根据卡号查询银行卡信息
- gif制作动图超简单,手把手教会用图片做gif动图
- HDU 3966(树链剖分)
- 【强烈推荐一款吊炸天的 Kafka 图形化工具 Eagle】
- 如何使用python的openpyxl进行强大的图表处理
- QQ第三方登录-QQ互联开发者申请的坑(个人接入,时间:2019-6-3)
- Git Bash中怎么复制与粘贴
- 心理、意识和其他状态
热门文章
- [水晶报表]创建不受数据库限制的报表(2)
- python基础之socket编程
- python爬虫之User Agent
- 前端JS的一些使用方法-持续更新
- java常用 api
- 网络之NSURLSession
- C语言实现radon变换
- .Net Remoting 1
- android 封装状态页面,Android 缺省页状态切换方案
- sqlite3数据存储最多存储多少条数据?达到上限如何处理?_在数据爆炸的当下,教你设计一个能实现9个9数据可靠性的存储系统...