参数传递

王朝百科·作者佚名  2010-07-23
窄屏简体版  字體: |||超大  

在使用函数时,要填入与函数形式参数个数相同的实际参数(有默认参数的除外),在程序运行过程中,实际参数就会将参数值传递给相应的形式参数,然后在函数中实现对数据的处理和返回。在由实际参数向形式参数传递过程中,共有值传递,引用传递,默认参数3种。

1、值传递

值传递,就是将实际参数的值复制到形式参数中。然后由形式参数和函数内部的计算,函数的调用结束后,实际参数的值不会发生改变。

2、引用传递

如果要实现形式参数改变时实际参数也发生相应的改变,就要使用引用传递的方式。

参数引用的方式有两种:

①在函数定义的时候,在形式参数前面加上“&”符号,例如:

function fan(&$var1){……}

②在函数调用的时候,在实际函数前面加上“&”符号。例如:

function fan($var1)(……)

fun(&$var2)

如果形式参数$var1的值在函数中发生变化,实际参数$var2的值也会发生相应的变化。

3、默认参数

php5支持有默认值的参数,即在函数定义时可以为一个或多个形式参数指定默认值。

【实例】

<HTML>

<HEAD>

<TITLE>函数参数的传递</TITLE>

</HEAD>

<BODY>

<?php

function myfun1($var1)

{ //值传递测试函数

$var1=88;

}

function myfun2(&$var1)

{ //第一种引用传递测试函数

$var1=88;

}

function myfun3($var1)

{ //第二种引用传递测试函数

$var1=99;

}

function myfun4($string,$color="red")

{ //默认参数传递测试函数

echo "<font color=".$color.">".$string."</font>";

}

$var1=66;

$string="这是红色字体!";

echo "初始值:$var=".$var1."<br>";

myfun1($var1);

echo "值传递结束后:$var=".$var1."<br>";

myfun2($var1);

echo "第一种引用传递结束后:$var=".$var1."<br>";

myfun3(&$var1);

echo "第二种引用传递结束后:$var=".$var1."<br>";

echo "默认参数的效果为:";

@myfun4($string);

?>

</BODY>

</HTML>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航