学习过程中发现引用传递参数方式有两种,故且称为“定义引用”(函数定义时引用传递)和“调用引用”(调用函数时引用传递)。它们相以实现相同的功能,简单示例代码如下:
<?php
function showvariable1(&$value)//定义引用方式
{
$value+=1;
}
function showvariable2($value)//调用引用方式
{
$value+=1;
}
$number=1;
echo "调用函数前的值:$number<br />";
showvariable1($number);
echo "定义方式的引用传递,调用函数后的值:$number<br />";
$number=1;
showvariable2(&$number);
echo "调用方式的引用传递,调用函数后的值:$number<br />";
?>
——————————————
运行结果:
调用函数前的值:1
定义方式的引用传递,调用函数后的值:2
调用方式的引用传递,调用函数后的值:2
————————————————————
既然可以实现相同的功能,那是不是调用方式的灵活性更大?想传值就传值,想引用就引用。可教材上只介绍了定义时引用传递的方式,所以有些疑惑。