php中函数的形参与实参的问题说明


Posted in PHP onSeptember 01, 2010

当实参个数<形参个数 时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 相关文章推荐
一个简单计数器的源代码
Oct 09 PHP
php实现jQuery扩展函数
Oct 30 PHP
提高php运行速度的一些小技巧分享
Jul 03 PHP
php打造智能化的柱状图程序,用于报表等
Jun 19 PHP
在Mac OS上编译安装Nginx+PHP+MariaDB开发环境的教程
Feb 23 PHP
php 实现进制相互转换
Apr 07 PHP
php实现的二叉树遍历算法示例
Jun 15 PHP
PHP实现链式操作的三种方法详解
Nov 16 PHP
PHP重置数组为连续数字索引的几种方式总结
Mar 12 PHP
PHP中的self关键字详解
Jun 23 PHP
TP3.2.3框架使用CKeditor编辑器在页面中上传图片的方法分析
Dec 31 PHP
php设计模式之中介者模式分析【星际争霸游戏案例】
Mar 23 PHP
php数据库连接时容易出错的特殊符号问题
Sep 01 #PHP
PHP下利用header()函数设置浏览器缓存的代码
Sep 01 #PHP
使用bcompiler对PHP文件进行加密的代码
Aug 29 #PHP
php采集时被封ip的解决方法
Aug 29 #PHP
PHP isset()与empty()的使用区别详解
Aug 29 #PHP
php Notice: Undefined index 错误提示解决方法
Aug 29 #PHP
php下统计用户在线时间的一种尝试
Aug 26 #PHP
You might like
用PHP读取IMAP邮件
2006/10/09 PHP
zf框架的数据库追踪器使用示例
2014/03/13 PHP
yii2 modal弹窗之ActiveForm ajax表单异步验证
2016/06/13 PHP
php版微信自动获取收货地址api用法示例
2016/09/22 PHP
深入研究PHP中的preg_replace和代码执行
2018/08/15 PHP
PHP上传图片到数据库并显示的实例代码
2019/12/20 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
2020/04/14 PHP
JavaScript1.6数组新特性介绍以及JQuery的几个工具方法
2013/12/06 Javascript
纯js实现div内图片自适应大小(已测试,兼容火狐)
2014/06/16 Javascript
[原创]JQuery 在表单提交之前修改 提交的值
2016/04/14 Javascript
JS简单循环遍历json数组的方法
2016/04/22 Javascript
Bootstrap的modal拖动效果
2016/12/25 Javascript
微信小程序自定义弹窗滚动与页面滚动冲突的解决方法
2019/07/16 Javascript
简述ES6新增关键字let与var的区别
2019/08/23 Javascript
python使用pyhook监控键盘并实现切换歌曲的功能
2014/07/18 Python
浅谈python对象数据的读写权限
2016/09/12 Python
python将每个单词按空格分开并保存到文件中
2018/03/19 Python
使用Selenium破解新浪微博的四宫格验证码
2018/10/19 Python
实例详解Python模块decimal
2019/06/26 Python
Python JSON编解码方式原理详解
2020/01/20 Python
Python IDLE或shell中切换路径的操作
2020/03/09 Python
Python3操作YAML文件格式方法解析
2020/04/10 Python
PyQt5 控件字体样式等设置的实现
2020/05/13 Python
Python如何把十进制数转换成ip地址
2020/05/25 Python
解决python 执行sql语句时所传参数含有单引号的问题
2020/06/06 Python
Python 如何调试程序崩溃错误
2020/08/03 Python
英语自荐信范文
2013/12/11 职场文书
致跳远运动员加油稿
2014/02/11 职场文书
《蓝色的树叶》教学反思
2014/02/24 职场文书
社会实践评语
2014/04/28 职场文书
驾驶员安全责任书范本
2014/07/24 职场文书
党员自我评议对照检查材料
2014/09/27 职场文书
学校三八妇女节活动总结
2015/02/06 职场文书
2015年劳动部工作总结
2015/05/23 职场文书
企业宣传稿范文
2015/07/23 职场文书
2015年办税服务厅工作总结
2015/07/23 职场文书