php函数间的参数传递(值传递/引用传递)


Posted in PHP onSeptember 23, 2013

php:函数间的参数传递

1.值传递

<?php 
function exam($var1){ 
$var1++; 
echo "In Exam:" . $var1 . "<br />"; 
} $var1 = 1; 
echo $var1 . "<br />"; 
exam($var1); 
echo $var1 . "<br />"; 
?>

-------------------------------------------------------------------------------
输出结果:
1
In Exam: 2
1
-------------------------------------------------------------------------------
2.引用传递
<?php 
function exam( &$var1){ 
$var1++; 
echo "In Exam:" . $var1 . "<br />"; 
} $var1 = 1; 
echo $var1 . "<br />"; 
exam($var1); 
echo $var1 . "<br />"; 
?>

-------------------------------------------------------------------------------
输出结果:
1
In Exam: 2
2
-------------------------------------------------------------------------------
3.可选参数

function values($price, $tax=""){ 
$price += $prive * $tax; 
echo "Total Price:" . $price . "<br />"; 
} values(100, 0.25); 
values(100);

输出结果:
Total Price: 125
Total Price: 100
-------------------------------------------------------------------------------
4.如果传入的是一个对象,可以更改该对象的值
(实际上变量$obj记录的是这个对象的句柄,将$obj作为参数传入,完全可以对原对象进行操作。)
<?php 
class Obj{ 
public $name; 
public $age; 
public $gander; 
public function __construct($name, $age, $gander){ 
$this->name = $name; 
$this->age = $age; 
$this->gander = $gander; 
} 
public function show_info(){ 
echo $this->name . " " . $this->age . " " . $this->gander . "<br />"; 
} 
} 
function grow($obj){ 
$obj->age++; 
} 
function test(){ 
$obj = new Obj("Mr. zhan", "12", "male"); 
$obj->show_info(); 
grow($obj); 
$obj->show_info(); 
grow($obj); 
$obj->show_info(); 
} 
test(); 
?>

-------------------------------------------------------------------------------
输出结果:
Mr. zhan 12 male
Mr. zhan 13 male
Mr. zhan 14 male
PHP 相关文章推荐
PHP自动更新新闻DIY
Oct 09 PHP
smtp邮件发送一例
Oct 09 PHP
《PHP编程最快明白》第三讲:php数组
Nov 01 PHP
PHP取二进制文件头快速判断文件类型的实现代码
Aug 05 PHP
PHP获取文件夹内文件数的方法
Mar 12 PHP
9个比较实用的php代码片段
Mar 15 PHP
php微信开发之百度天气预报
Nov 18 PHP
PHP水印类,支持添加图片、文字、填充颜色区域的实现
Feb 04 PHP
在laravel中使用Symfony的Crawler组件分析HTML
Jun 19 PHP
基于PHP-FPM进程池探秘
Oct 17 PHP
PHP 使用二进制保存用户状态的实例
Jan 29 PHP
PHP常量及变量区别原理详解
Aug 14 PHP
php数据类型判断函数有哪些
Sep 23 #PHP
PHP保留两位小数并且四舍五入及不四舍五入的方法
Sep 22 #PHP
php一次性删除前台checkbox多选内容的方法
Sep 22 #PHP
PHP导航下拉菜单的实现如此简单
Sep 22 #PHP
PHP 输出URL的快捷方式示例代码
Sep 22 #PHP
PHP截断标题且兼容utf8和gb2312编码
Sep 22 #PHP
PHP循环函数使用介绍之PHP基础入门教程
Sep 21 #PHP
You might like
PHP修改session_id示例代码
2014/01/08 PHP
php图片处理函数获取类型及扩展名实例
2014/11/19 PHP
PHP模板引擎Smarty中的保留变量用法分析
2016/04/11 PHP
浅谈php中变量的数据类型判断函数
2017/03/04 PHP
让ie6也支持websocket采用flash封装实现
2013/02/18 Javascript
验证码在IE中不刷新而谷歌等浏览器正常的解决方案
2014/03/18 Javascript
JavaScript调试技巧之console.log()详解
2014/03/19 Javascript
批量修改标签css样式以input标签为例
2014/07/31 Javascript
js时钟翻牌效果实现代码分享
2020/07/31 Javascript
js获取鼠标位置实例详解
2015/12/09 Javascript
深入浅析knockout源码分析之订阅
2016/07/12 Javascript
在node中如何使用 ES6
2017/04/22 Javascript
jQuery使用JSONP实现跨域获取数据的三种方法详解
2017/05/04 jQuery
jQuery.validate.js表单验证插件的使用代码详解
2018/10/22 jQuery
vue下使用nginx刷新页面404的问题解决
2019/08/02 Javascript
layer.prompt输入层的例子
2019/09/24 Javascript
在layer弹层layer.prompt中,修改placeholder的实现方法
2019/09/27 Javascript
解决vue admin element noCache设置无效的问题
2019/11/12 Javascript
JS实现盒子拖拽效果
2020/02/06 Javascript
python多线程threading.Lock锁用法实例
2014/11/01 Python
python中字符串内置函数的用法总结
2018/09/13 Python
python 字符串常用方法汇总详解
2019/09/16 Python
python scatter函数用法实例详解
2020/02/11 Python
Python关键字及可变参数*args,**kw原理解析
2020/04/04 Python
Python HTMLTestRunner库安装过程解析
2020/05/25 Python
python在CMD界面读取excel所有数据的示例
2020/09/28 Python
做一个能自适应高度的textarea的示例代码
2019/09/06 HTML / CSS
女装和独特珠宝:Sundance Catalog
2018/09/19 全球购物
舞蹈专业大学生职业规划范文
2014/03/12 职场文书
“三支一扶”支教教师思想汇报
2014/09/13 职场文书
庆祝新中国成立65周年“向国旗敬礼”网上签名寄语
2014/09/27 职场文书
2014年学校工会工作总结
2014/12/06 职场文书
2017寒假社会实践心得体会范文
2016/01/14 职场文书
PyTorch 如何设置随机数种子使结果可复现
2021/05/12 Python
CentOS7和8下安装Maven3.8.4
2022/04/07 Servers
MySQL解决Navicat设置默认字符串时的报错问题
2022/06/16 MySQL