手机
当前位置:查字典教程网 >编程开发 >php教程 >php中函数的形参与实参的问题说明
php中函数的形参与实参的问题说明
摘要:当实参个数形参个数时,php是不会报错的,它只会取前面的几个参数,多余的则将会丢弃。在PHP中编写函数,一般情况下调用函数的时候,改变的值都...

当实参个数<形参个数 时php会发出警告,因为php的解释机制会认为,有参数被定义了却没有被使用,那很可能会影响函数的功能。所以会发出警告。然而,当 实参个数>形参个数 时,php是不会报错的,它只会取前面的几个参数,多余的则将会丢弃。

在PHP中编写函数,一般情况下调用函数的时候,改变的值都是形参而不是实参.但是如果在形参中加入地址符时候就会改变实参的值,为什么?

请看下面的例子:

复制代码 代码如下:

<?php

//编写一个函数swap(),测试该函数的实参值无改变

function swap($a,$b) {

echo "<p>进入swqp()函数前<br>n";

echo "交换前:形参a=$a,形参b=$b<br>n";

$c=$b;

$a=$b;

$b=$c;

echo "交换后:形参a=$a,形参b=$b<br>n";

echo "退出swap()函数<br></p>n";

}

$variablea=5;

$variableb=10;

echo "调用swap()函数前: ";

echo "实参a=$variablea,实参b=$variableb<br>n";

swap($variablea,$variableb);

echo "调用swap()函数后: ";

echo "实参a=$variablea,实参b=$variableb<br>n";

?>

复制代码 代码如下:

<?php

//测试swap()函数实参的值改变

function swap1(&$a,&$b) {

echo "<p>进入swap1()函数<br>n";

echo "交换前: 形参a=$a,形参b=$b<br>n";

$c=$b;

$a=$b;

$b=$c;

echo "交换后: 形参a=$a,形参b=$b<br>n";

echo "退出swap()函数<br></p>n";

}

$variablea=5;

$variableb=10;

echo "调用swap1()函数前: ";

echo "实参a=$variablea,实参b=$variableb<br>n";

swap1($variablea,$variableb);

echo "调用swap1()函数后: ";

echo "实参a=$variablea,实参b=$variableb<br>n";

?>

//上面的两个例子就是说明,求教了~~~

【php中函数的形参与实参的问题说明】相关文章:

php中文件上传的安全问题

php线性表的入栈与出栈实例分析

关于PHP中操作MySQL数据库的一些要注意的问题

PHP中iconv函数知识汇总

php中静态类与静态变量用法区别解析

php猴子选大王问题解决方法

PHP中实现进程间通讯

php数组合并与拆分实例分析

xml+php动态载入与分页

php自定义hash函数实例

精品推荐
分类导航