php引用和拷贝的区别知识点总结


Posted in PHP onSeptember 23, 2019

对于值传递和引用传递,书本上的解释比较繁琐,而php面试中总会出现,下面我会通过一个生活的例子带大家理解它们之间区别。

第一步

假设我们去酒店订房间,我们把酒店的门牌号比作变量名,我们把房间里住人数当做给这个变量名赋值的过程

<?php

$k1=2;//$k1号房间住了2个人

$k2=$k1;//恰巧今天$k1号房间维修,把$k1号房间的人放到$k2房间里面

$k1=10;//假设$k1维修好了,又住进10个人,那么这就是值传递。

echo "$k1号房间:".$k1."个人";//10

echo "$k2号房间:".$k2."个人";//1

?>

值传递的特点:

1、值相等

也就是$k1给$k2房间里的人是相等的。

2、相互独立、互不影响

这就是说,我$k1房间来多少客人和$k2房间客人来多少客人是互相不影响的。这就叫:"道不同不相为谋"。

第二步

以上面为例 假设我们$k1这个房间被维修工挂上两个门牌号$k1和$k2来理解

<?php

$k1=2;//$k1号房间住了2个人

$k2=&$k1;//恰巧今天$k1号房间挂上"$k1"和“$k2”两个门牌号

$k1=10;//假设$k1又住进10个人,那么这就是引用传递。

echo "$k1号房间:".$k1."个人";//10

echo "$k2号房间:".$k2."个人";//10因为门牌$k1房间的客人就是门牌$k2里面的客人

?>

引用传递的特点:

相互影响,也就是说$k1中来多少客人,$k2就是显示多少客人,这就叫"拴在一条绳上的蚂蚱"。

区别

1、使用上的区别

值传递的符号是=

引用传递符号是&

2、意义上的区别

值传递是变量传递是互不影响的,而引用传递则是两个变量指向同一空间相互影响的。

以上就是php引用和拷贝的区别的详细内容,感谢大家的学习和对三水点靠木的支持。

PHP 相关文章推荐
用文本作数据处理
Oct 09 PHP
php桌面中心(二) 数据库写入
Mar 11 PHP
pdo中使用参数化查询sql
Aug 11 PHP
PHP开发微信支付的代码分享
May 25 PHP
PHP中file_exists()判断中文文件名无效的解决方法
Nov 12 PHP
php使用ob_flush不能每隔一秒输出原理分析
Jun 02 PHP
php实现XSS安全过滤的方法
Jul 29 PHP
PHP7之Mongodb API使用详解
Dec 26 PHP
Yii实现显示静态页的方法
Apr 25 PHP
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
Apr 26 PHP
自制PHP框架之路由与控制器
May 07 PHP
ThinkPHP框架结合Ajax实现用户名校验功能示例
Jul 03 PHP
php异常处理捕获错误整理
Sep 23 #PHP
ThinkPHP 5.x远程命令执行漏洞复现
Sep 23 #PHP
PHP开启目录引索+fancyindex漂亮目录浏览带搜索功能
Sep 23 #PHP
redis+php实现微博(三)微博列表功能详解
Sep 23 #PHP
redis+php实现微博(二)发布与关注功能详解
Sep 23 #PHP
redis+php实现微博(一)注册与登录功能详解
Sep 23 #PHP
php日志函数error_log用法实例分析
Sep 23 #PHP
You might like
简单易用的计数器(数据库)
2006/10/09 PHP
如何将一个表单同时提交到两个地方处理
2006/10/09 PHP
php中将地址生成迅雷快车旋风链接的代码[测试通过]
2011/04/20 PHP
zend framework配置操作数据库实例分析
2012/12/06 PHP
解析php利用正则表达式解决采集内容排版的问题
2013/06/20 PHP
php使用GeoIP库实例
2014/06/27 PHP
Mozilla 表达式 __noSuchMethod__
2009/04/05 Javascript
js+css在交互上的应用
2010/07/18 Javascript
JQuery开发的数独游戏代码
2010/10/29 Javascript
jquery中ajax学习笔记4
2011/10/16 Javascript
js控制不同的时间段显示不同的css样式的实例代码
2013/11/04 Javascript
防止按钮在短时间内被多次点击的方法
2014/03/10 Javascript
20条学习javascript的编程规范的建议
2014/11/28 Javascript
json实现添加、遍历与删除属性的方法
2016/06/17 Javascript
浅谈js中test()函数在正则中的使用
2016/08/19 Javascript
JavaScript队列、优先队列与循环队列
2016/11/14 Javascript
详解Nodejs的timers模块
2016/12/22 NodeJs
手把手教你用Node.js爬虫爬取网站数据的方法
2018/07/05 Javascript
vue项目配置使用flow类型检查的步骤
2020/03/18 Javascript
Python 基于Twisted框架的文件夹网络传输源码
2016/08/28 Python
Django Web开发中django-debug-toolbar的配置以及使用
2018/05/06 Python
Python json模块dumps、loads操作示例
2018/09/06 Python
对IPython交互模式下的退出方法详解
2019/02/16 Python
Django CBV与FBV原理及实例详解
2019/08/12 Python
浅谈Python2之汉字编码为unicode的问题(即类似\xc3\xa4)
2019/08/12 Python
Python的历史与优缺点整理
2020/05/26 Python
没编程基础可以学python吗
2020/06/17 Python
详解如何在pyqt中通过OpenCV实现对窗口的透视变换
2020/09/20 Python
纽约JewelryAffairs珠宝店:精细金银时尚首饰
2017/02/05 全球购物
就业协议书样本
2014/08/20 职场文书
《中国梦我的梦》中学生演讲稿
2014/08/20 职场文书
常务副县长“三严三实”对照检查材料思想汇报
2014/10/05 职场文书
个人更名证明
2015/06/23 职场文书
红领巾广播站广播稿
2015/08/19 职场文书
2019年最新感恩节祝福语(28句)
2019/11/27 职场文书
德生BCL3000抢先使用感受和评价
2022/04/07 无线电