变量的传值方式
1. 值传递
1.1 定义
值传递是指在调用函数时将实际参数复制一份传递到函数中,这样在函数中如果对参数进行修改,将不会影响到实际参数。
1.2示例
$a=10;
$b=$a;
$a++;
echo $a;
echo $b;
输出内容为:$a=11;
$b=10;
他们互不影响,互相独立。
说明:将变量
a
的
值
10
复
制
了
一
份
给
变
量
a的值10复制了一份给变量
a的值10复制了一份给变量b,所以此时无论改变哪个变量的值,都不会影响另外一个变量的值
1.3 总结:值传递相当于是复制了一份数据,对原来的进行任何操作不会影响后面的
2.引用传递
2.1 概念
所谓引用传递是指在调用函数时将实际参数的地址传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。
2.2 示例
$a=10;
$b=&$a;
$a++;
echo $a;
echo $b;
输出内容为:$a=11;
$b=11;
说明:两个变量指向了同一个数据,所以无论改变哪个变量的值,另一个变量也会受影响
2.3 总结:引用赋值是两个变量指向同一个数据,其中一个变化了,另外一个也会跟着变化。
3.值传递与引用传递的区别
- 值传递是变量传递是互不影响的,而引用传递则是两个变量指向同一空间相互影响的。
- 值传递符号只用 ‘=’ 就可以了,引用传递须在 ‘=’后加‘&’。