传值赋值:将源变量的值复制一份新的值内存空间地址给另一个变量,修改两个变量的值互不影响;
引用赋值:新的变量引用/指向了原始变量,互相影响,没有复制操作,更加快捷。
<?php
//传值赋值
// 赋值变量a为99
$a = 99;
// 让变量b等于变量a
$b = $a;
// 输出变量b
echo $b;// 输出99
// 修改变量a的值为900
$a = 900;
echo '<hr>';
// 此时输出变量b的值依旧为99 ,不受修改值的影响
echo $b;
<?php
//引用赋值
// 赋值price为88
$price = 88;
// 通过&符让变量price1 引用$price的值88
$price1 = &$price;
//此时输出price1 输出值为88
echo $price1;
echo '<hr>';
//修改 原始变量 price的值为'大佬'
$price = '大佬';
// 此时再输出price,输出值为'大佬'
echo $price1;
//引用赋值内存不同体
<?php
// 赋值foo 为40
$foo = 40;
// 赋值bar引用foo
$bar = &$foo;
// 输出bar
echo $bar;
// 释放foo ,仅将两个值取消关联
unset($foo);
// 再输出bar 正常输出
echo $bar;
总结:传值赋值是不受原始值的再次修改影响的,除非修改原始值,传值赋值才会受到改变,而引用赋值则会受到原始值修改的影响,但是内存是不同体的(此处有待理解)。