网站地图    收藏   

主页 > 后端 > php资料库 >

php中函数调用时候的两种参数方式–传值和传地

来源:自学PHP网    时间:2014-12-04 22:12 作者: 阅读:

[导读] 在函数调用的时候,我们通常有两种传递方式,一种是传值,一种是传地址,两种有啥区别呢? 现在看看这个实例吧@#! 输入代码: //这是一个函数需要传递的参数是传值形式的 functio...

在函数调用的时候,我们通常有两种传递方式,一种是传值,一种是传地址,两种有啥区别呢?
现在看看这个实例吧@#!
输入代码:

//这是一个函数需要传递的参数是传值形式的
function test($a){ //$a是形参
$a=21; //这里$a需要自己在栈里面开辟空间来存储形参传递过来的值,这时候操作的是自己的栈空间
}

$b=12;
test($b); //这里的$b是实际参数
echo $b;

echo “<br/>”;

//这是一个函数需要传递的参数是传地址形式的
function test2(&$c){ //$c是形式参数
$c=12254; //这里$c只是存放地址,在堆里面就行了,他直接指向的是形参传递进来的地址,这时候更改值就是操作形参那个地址指向的栈
}

$d=5;
test2($d); //这里的$d是实际参数
echo $d;

//可以看到在输出的结果是 12 和 12254
//这是因为第一个额函数传递的是实际的值,$b
?>

可以看到效果:
 

php中函数调用时候的两种参数方式–传值和传地址
php中函数调用时候的两种参数方式–传值和传地址

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论