php 传值与传引用的区别详细介绍
发布时间:2023-11-07 11:01:42 所属栏目:PHP教程 来源:未知
导读: 传值:
函数参数压栈的是参数的副本。
任何的修改是在副本上作用,没有作用在原来的变量上。
传引用:
压栈的是引用的副本。由于引用是
函数参数压栈的是参数的副本。
任何的修改是在副本上作用,没有作用在原来的变量上。
传引用:
压栈的是引用的副本。由于引用是
传值: 函数参数压栈的是参数的副本。 任何的修改是在副本上作用,没有作用在原来的变量上。 传引用: 压栈的是引用的副本。由于引用是指向某个变量的,对引用的操作其实就是对他指向的变量的操作。(作用和传指针一样,只是引用少了解指针的草纸) 例子 代码如下 1 function func1($a) { $a = $a + 1;} function func2(&$a) { $a = $a + 1;} $sample = 1; func1($sample); echo $sample; // 输出 1 $sample = 1; func2($sample); echo $sample; // 输出 2 例子 代码如下 1 $num1 = 15; $num2 = &$num1; $num2 = 20; echo $num1;//输出20 ?> 再比如: 代码如下 1 function func1($a) { $a = $a + 1; } function func2(&$a) { $a = $a + 1; } $sample = 1; func1($sample); echo $sample; // 输出 1 $sample = 1; func2($sample); echo $sample; // 输出 2 总结一下 传值的话,如果是非对象,会传一个值的拷贝,对这个变量做任何改动都不影响原值。传引用或者传对象,是传真实的内存地址,对这个变量做的改动会影响原值。 (编辑:通辽站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐