PHP第四天 函数引用传值


<?php
function f1($p1,&$p2){
$p1++;
$p2++;
$result= $p1+ $p2;
return $result;
}
$v1=10;
$v2=20;
$s = f1($v1,$v2);
echo "<br>s=$s,v1=$v1,v2=$v2";
// <br>s=32,v1=10,v2=21
?>
 

函数执行原理(重点/难点)

程序总是运行在一个“内存空间”。

程序开始执行的位置所在的空间,可以称之为“主运行空间”。

实际上,通常函数外面的那些程序,都是运行在主空间中。

那么,函数的运行,就相对独立了——每个函数的每次调用,都是运行在单独的一个自己的空间中。

如下所示:


提示:

在从主空间进入函数空间的时刻,会先将函数调用时的“实参数据”,赋值(传值)给“形参变量”

而后,才开始执行函数内部的语句!

函数参数(重点)

形参(形式参数)

就是定义函数的时候,在函数名后的小括号中给出的变量名。

形参,只能在函数内部使用——即该变量的使用范围仅仅局限于当前函数内部。

形参的本质是变量!

实参(实际参数)

就是调用函数的时候,在函数名后的小括号中给出的数据值。

实参的本质是数据!

函数参数的传值方式

含义:

实参变量的值,以什么方式传给形参。

说明:

其前提是:实参是一个变量的情况。

所以其实这里讨论的是:两个变量的传值方式问题。

默认情况下是值传递。

可以使用“&”符号设定为引用传递,形式如下:

function  f1( $p1, &$p2, .... ){  

。。。。。

}

此时,在函数内部,对该形参变量改变其值,则对应的实参变量(在函数外部)的值也改变了。

 
--------------------- 

猜你喜欢

转载自www.cnblogs.com/ly570/p/10961089.html