PHP的传值赋值和引用赋值的区别

今天由源码时代PHP培训学科老师给你们分享技术:在PHP中的传值赋值和引用赋值详解!快来学习下~php

PHP变量间的赋值方式html

将a变量的值赋值给b变量有两种赋值方式:数组

1.传值赋值学习

2.引用赋值htm

一、传值赋值three

传值赋值是将变量的值复制出一份新的值(值是同样的),只是在内存中出现两份不一样的内存空间。将新值内存空间地址赋值给新的变量名字。修改两个变量的值时还不影响。内存

例如:将$a变量的值复制出一份存放到$b变量中.ci

 

由于他们各自指向本身的内存区域.get

二、引用赋值源码

引用赋值是将变量的引用复制出来一份(新的引用仍是指向原来的值)。

语法:

将$a变量引用复制出一份做为$b变量的引用. 两个变量的引用指向同一个内存空间.

经过&符号表示在赋值过程值使用引用赋值.

修改$a,$b的值都是修改值空间. 会相互影响两个变量的值.

三、默认的传值方式

在PHP中每种数据类型默认的传值方式不同:

四、数组赋值

数组赋值很是特殊,它存在着写复制机制。

以上代码是引用赋值,由于默认状况下引用赋值,会将arr1的引用赋值给arr2变量,arr1和arr2两个变量指向同一个内存空间["张三","王五","赵六"]

当修改其中一个变量的值就会复制出新的内存,而后再新的内存中修改,从而将修改的变量指向新的内存 。

五、选择哪一种赋值方式呢?

若是变量a指向的内存存储大量数据,将变量a赋值给变量b,建议使用地址赋值,这样能够节约内存的使用率. 但b变量值的改变就会影响到a.

本文由源码时代php培训学科老师原创,转载需注明出处!

相关文章
相关标签/搜索