php引用和拷贝的区别知识点总结,号房,客人,门牌号,房间,区别

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

易采站长站,站长之家为您整理了php引用和拷贝的区别知识点总结的相关内容。

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

第一步

假设我们去酒店订房间,我们把酒店的门牌号比作变量名,我们把房间里住人数当做给这个变量名赋值的过程<?php $k1=2;//$k1号房间住了2个人$k2=$k1;//恰巧今天$k1号房间维修,把$k1号房间的人放到$k2房间里面$k1=10;//假设$k1维修好了,又住进10个人,那么这就是值传递。echo "$k1号房间:".$k1."个人";//10echo "$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."个人";//10echo "$k2号房间:".$k2."个人";//10因为门牌$k1房间的客人就是门牌$k2里面的客人?>

引用传递的特点:

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

区别

1、使用上的区别

值传递的符号是=

引用传递符号是&

2、意义上的区别

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

以上就是php引用和拷贝的区别的详细内容,感谢大家的学习和对我们的支持。以上就是关于对php引用和拷贝的区别知识点总结的详细介绍。欢迎大家对php引用和拷贝的区别知识点总结内容提出宝贵意见

拷贝和引用有什么区别php,php引用和拷贝的区别知识点总结相关推荐

  1. 引用和指针的区别?传引用比传指针安全,为什么?如果我使用常量指针难道不行吗?

    引用和指针的区别 (1) 引用在创建的同时必须初始化,即引用到一个有效的对象:而指针在定义的时候不必初始化,可以在定义后面的任何地方重新赋值. (2) 不存在NULL引用,引用必须与合法的存储单元关联 ...

  2. python引用传递的区别_php传值引用的区别

    PHP传值与传址(引用) 传值和传引用的区别在于,如果一个参数比较大,占用大量的内存空间,那么传引用的话就会节省拷贝空间. 传值:是把实参的值赋值给行参 ,那么对行参的修改,不会影响实参的值 传引用 ...

  3. php zval_copy_static_var(),zval _ 引用计数 _ 变量分离 _ 写时拷贝

    zval.引用计数.变量分离.写时拷贝 我们一步步来理解 1.php语言特性 PHP是脚本语言,所谓脚本语言,就是说PHP并不是独立运行的,要运行PHP代码需要PHP解析器,用户编写的PHP代码最终都 ...

  4. java 软引用_Java中弱引用和软引用的区别以及虚引用和强引用介绍

    知道弱引用和软引用的概念与如何使用它们是两码事,引用类在垃圾回收工作的过程中有重要作用.我们都知道垃圾回收器会回收符合回收条件的对象的内存,但并不是所有的程序员都知道回收条件取决于指向该对象的引用类型 ...

  5. python分代回收_python 垃圾回收——分代回收 和java有些区别 注意循环引用无法被回收...

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 语言的内存管理是语言设计的一个重要方面.它是决定语言性能的重要因素.无论是C语言的 ...

  6. python 变量赋值是引用和拷贝_Python 中变量赋值传递时的引用和拷贝

    曾经看到这样一个问题,一个字典中的元素是列表,将这个列表元素赋值给一个变量,然后修改这个列表中元素的值,结果发现,字典中那个列表也同样修改了.那个问题如下: dict = {'a':[1,2,3,4, ...

  7. 弱引用是什么,和其他引用有啥区别?

    前言 最近看 WeakHashMap 代码时,发现了一个名词叫 弱引用 ,然而我居然没听说过,这可不能忍所以打算研究下这是啥玩意儿. 其实就是多看几篇博客,然会汇总下而已... 四种引用的定义 Jav ...

  8. C++11中的右值引用(对比左值引用和常引用)、移动构造函数和引用标识符

    Hello!各位同学们大家好!逗比老师最近说起来还是挺尴尬的,为什么这么说呢?因为以前我对自己的C++水平还是相当自信的,经常以"精通"来自我评价.但是最近发现自己好像对C++11 ...

  9. C++中左值(引用)及右值(引用)详解

    写C++代码编译时,有时会出现左值问题错误或右值错误,那左值和右值究竟是什么呢??? 一.左值与右值 啥是左值和右值呢? 左值:在内存有确定存储地址.有变量名,表达式结束依然存在的值,简单来说左值就是 ...

  10. static全局变量与普通全局变量区别?static局部变量与普通局部变量区别?static函数与普通函数区别?

    static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别? 答: 1) 全局变量(外部变量)的说明之前再冠以static 就构 ...

最新文章

  1. Splay ---- 区间翻转 区间最大值 区间加 P4146 序列终结者
  2. 【采用】规则引擎Pyke与PyClips对比研究报告(高大上啊,第一次听说pyke和pyclips这俩词~)
  3. 浮点数相加php,利用php怎么实现一个浮点数精确运算功能
  4. java通过jdbc登陆系统_JDBC模拟登录
  5. 如何把数据在A表空间里面,把它IMP进B表空间
  6. 对于scanf的使用一点体会心得
  7. SpringBoot核心
  8. python模糊匹配忽略大小写_在python中忽略大小写的简单方法?
  9. Spring-beans-FactoryBean
  10. 特斯拉股东要用“独立董事长”换掉马斯克,不过最终失败了
  11. mysql 的命令行操作
  12. 数组排序:冒泡法和选择法
  13. 论文笔记_S2D.53_2013-ICCV_单目相机半稠密视觉里程计(VO)
  14. ubuntu desktop 12 lts 安装 vmplayer 问题
  15. 松江区企业技术中心认定条件及奖励政策解读
  16. 微信小程序之文本内的p标签去除
  17. Learning Shape Representations for Clothing Variations in Person Re-Identification
  18. css3中属性前缀(-moz、-ms、-webkit、-o-)
  19. 真正拖垮年轻人认知水平的,是幸存者偏差!
  20. PMP_第7章章节试题

热门文章

  1. /MD 与 /MT、/MTD与/MDD的区别
  2. 各种群体寻优算法的比较
  3. matlab中工作空间的作用,MATLAB的工作空间
  4. python怎么搜索文献_python论文参考文献有哪些
  5. c 语言提取左右声道数据
  6. Google guava学习
  7. Python数据挖掘(2)简单的分类问题
  8. 城市感知体系十大典型应用场景
  9. div用css显示隐藏的效果
  10. 11 寻找峰值(Find Peak Element)