传值:当使用传值的方式时,函数或方法会创建原始变量的一个副本,并将该副本传递给函数或方法。在函数或方法内部,对副本的任何修改都不会影响到原始变量。当函数或方法执行完毕后,副本被销毁,不再使用。
传引用:当使用传引用的方式时,函数或方法会传递原始变量的引用(内存地址)。这意味着在函数或方法内部对原始变量的任何修改都会直接反映在原始变量上。当函数或方法执行完毕后,原始变量仍然存在,并保留了在函数或方法内部所做的修改
选择传值还是传引用时
代码案例
- // 值传递示例
- function square($num) {
- $num = $num * $num;
- echo "在函数内部:$num
"; - }
- $number = 5;
- echo "函数调用前:$number
"; - square($number);
- echo "函数调用后:$number
"; - // 引用传递示例
- function increment(&$num) {
- $num++;
- echo "在函数内部:$num
"; - }
- $number = 5;
- echo "函数调用前:$number
"; - increment($number);
- echo "函数调用后:$number
";