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 相关文章推荐
php ajax 静态分页过程形式
Sep 02 PHP
php遍历目录与文件夹的多种方法详解
Nov 14 PHP
smarty自定义函数htmlcheckboxes用法实例
Jan 22 PHP
PHP中使用Imagick操作PSD文件实例
Jan 26 PHP
学习php设计模式 php实现备忘录模式(Memento)
Dec 09 PHP
PHP入门教程之自定义函数用法详解(创建,调用,变量,参数,返回值等)
Sep 11 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
Jul 19 PHP
php实现微信支付之现金红包
May 30 PHP
PHP设计模式之抽象工厂模式实例分析
Mar 25 PHP
PHP单例模式实例分析【防继承,防克隆操作】
May 22 PHP
PHP实现关键字搜索后描红功能示例
Jul 03 PHP
Laravel监听数据库访问,打印SQL的例子
Oct 24 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
php之XML转数组函数的详解
2013/06/07 PHP
PHP实现抓取Google IP并自动修改hosts文件
2015/02/12 PHP
thinkPHP实现MemCache分布式缓存功能
2016/03/23 PHP
PHP并发多进程处理利器Gearman使用介绍
2016/05/16 PHP
PHP实现支持加盐的图片加密解密
2016/09/09 PHP
图片自动缩小的js代码,用以防止图片撑破页面
2007/03/12 Javascript
Jquery 类网页微信二维码图块滚动效果具体实现
2013/10/14 Javascript
ajax请求get与post的区别总结
2013/11/04 Javascript
使用js判断数组中是否包含某一元素(类似于php中的in_array())
2013/12/12 Javascript
JQuery中使用ajax传输超大数据的解决方法
2014/07/14 Javascript
JavaScript实现在标题栏上显示当前日期的方法
2015/03/19 Javascript
prototype.js常用函数详解
2016/06/18 Javascript
Javascript Event(事件)的传播与冒泡
2017/01/23 Javascript
bootstrap table表格使用方法详解
2017/04/26 Javascript
JS将unicode码转中文方法
2017/05/08 Javascript
node.js遍历目录的方法示例
2018/08/01 Javascript
详解vantUI框架在vue项目中的应用踩坑
2018/12/06 Javascript
jQuery实现的点击图片居中放大缩小功能示例
2019/01/16 jQuery
微信小程序-form表单提交代码实例
2019/04/29 Javascript
vue-loader中引入模板预处理器的实现
2019/09/04 Javascript
JS原型和原型链原理与用法实例详解
2020/02/05 Javascript
[06:38]DOTA2怒掀电竞风暴 2013Chinajoy
2013/07/27 DOTA
python实现文件分组复制到不同目录的例子
2014/06/04 Python
OpenCV2.3.1+Python2.7.3+Numpy等的配置解析
2018/01/05 Python
Python实现带参数与不带参数的多重继承示例
2018/01/30 Python
python之django母板页面的使用
2018/07/03 Python
python队列原理及实现方法示例
2019/11/27 Python
详解Python流程控制语句
2020/10/28 Python
美国电子元器件分销商:Newark element14
2018/01/13 全球购物
印度尼西亚电子产品购物网站:Kliknklik
2018/06/05 全球购物
简单介绍Object类的功能、常用方法
2013/10/02 面试题
法雷奥SQA(electric)面试问题
2016/01/23 面试题
班组长安全职责
2014/01/05 职场文书
模具专业自荐信
2014/05/29 职场文书
政治学专业毕业生求职信
2014/08/11 职场文书
继承公证书格式
2015/01/26 职场文书