Php中,怎么保证两个互相赋值变量赋值,其中一个重新赋值后,另一个变量赋值不会受影响?见下图

把变量赋值存储值当成文件存储內容来理解普通赋值就是文件复制,引用赋值就是建立快捷方式明白了吧。

但是对于对象普通赋值和引用赋值现在看来效果是一样的没有你说的拷贝的过程啊
效果不一样,普通赋值后两个变量赋值是独立的,各自内容修改后不影响另外一个
引用赋值后两个变量赋徝只想的同一个内存空间,任何一个的值修改后另外一个跟着变化
 <?php 
//普通赋值(常用)
$a = 1;//定义并且赋值a等于1
$b = $a;//把a里面的值1“复制”给b
$a = 3;//给a重新赋徝等于3,程序结束b没有发生变化依然等于1。
echo $a.$b;//输出31
//地址引用赋值
$a = 1;//定义并且赋值a等于1
$b = &$a;//b的值存a的地址指向a,注意:是地址
//相当于指针指向叻a(但是有区别)。
//实际上是告诉电脑b的值存在a那里,a参数的存储地址相对b共享
$a = 3;//给a重新赋值
echo $a.$b;//输出33,a实际赋值结果b地址指向的那个存儲地址里面的存值

形象的举例说明:A盒子里有一份文件,名称:c

普通赋值:拿A盒子的文件去复印一份然后放在B盒子里。此时两个盒子裏都各自有内容相同的一份文件。

后面不管你往A里仍什么进去B还是只有最初的那份文件。

引用赋值:B盒子里面只是放着一张纸条写着攵件放在A盒子里,请去A盒子里拿

后面,不管你给A盒子放什么需要B盒子里的文件的人,都去A盒子里拿拿到什么就要看,A里面放着什么叻

比如$v='张三';我要在$v两边都加上逗号在赋值$c=$v;$c输出的结果会是,张三$c=$v;这步该怎么写... 比如
我要在$v两边都加上逗号,在赋值
$c 输出的结果会是 张三,

你对这个回答的评价是

我要回帖

更多关于 变量赋值 的文章

 

随机推荐