当前位置:Gxlcms > PHP教程 > php形参和实参的对应关系

php形参和实参的对应关系

时间:2021-07-01 10:21:17 帮助过:61人阅读

  function myfunction($num,$a,$b,$c) {
                   echo "a".$a;
                   echo "-b".$b;
                   echo "-c".$c;
                   echo "
"; $b+=2; $c+=3; $a+=1; echo "a".$a; echo "-b".$b; echo "-c".$c; echo "-num".$num; } myfunction(100,1,2,3); 运行结果:

a1-b2-c3
a2-b4-c6-num100

我得出的推论是 函数在运行时 形参和实参是一一对应的关系

但是当我只想传 $num $a $c 这三个参数 不想传 $b时 应该如果传参

myfunction(100,1,3);

运行结果:
a1-b3-c
a2-b5-c3-num100

这里面我其实是想让 $a=1 $c=3 不要$b的

回复内容:

  function myfunction($num,$a,$b,$c) {
                   echo "a".$a;
                   echo "-b".$b;
                   echo "-c".$c;
                   echo "
"; $b+=2; $c+=3; $a+=1; echo "a".$a; echo "-b".$b; echo "-c".$c; echo "-num".$num; } myfunction(100,1,2,3); 运行结果:

a1-b2-c3
a2-b4-c6-num100

我得出的推论是 函数在运行时 形参和实参是一一对应的关系

但是当我只想传 $num $a $c 这三个参数 不想传 $b时 应该如果传参

myfunction(100,1,3);

运行结果:
a1-b3-c
a2-b5-c3-num100

这里面我其实是想让 $a=1 $c=3 不要$b的

函数参数是一一对应的,如果不想传某个参数可以设置默认值

function myfunction($num=0,$a=0,$b=0,$c=0){
...
}
//调用函数位置要留出来
myfunction(100,,1,2);

题主总结的没错,实参和形参就是一一对应的关系
如果你的形参有三个,但是你只是想把第一和第三个实参传过去,对应形参里的第一和第三,那么就采用楼上的方法;

还有一个,就是一般,把不常用的形参放最后,并且赋予那个形参一个默认的值(这个值根据业务逻辑来定),这样你传递参数的时候只传递你想要传递的前几个参数就可以了,后面的可以忽略。

函数定义时,对应的参数是,形参,对应你这里是-function myfunction($num,$a,$b,$c){}。
函数调用时,对应的参数是,实参,对应你这里是-myfunction(100,1,2,3)。

肯定要一一对应的。

你写一个函数的时候,定义了多少个参数,调用的时候也就要写多少个参数,原理就和排队点名一样,你中间空了一个,如果你不留一个位置说明是空缺,那就会让后面的人顶上,导致的结果是最后一个位置空缺

人气教程排行