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 相关文章推荐
NT IIS下用ODBC连接数据库
Oct 09 PHP
php获得文件扩展名三法
Nov 25 PHP
php开发环境配置记录
Jan 14 PHP
linux下安装php的memcached客户端
Aug 03 PHP
如何通过Linux命令行使用和运行PHP脚本
Jul 29 PHP
Zend Studio使用技巧两则
Apr 01 PHP
Eclipse PHPEclipse 配置的具体步骤
Aug 08 PHP
PHP实现八皇后算法
May 06 PHP
php实现的表单验证类完整示例
Aug 13 PHP
使用git迁移Laravel项目至新开发环境的步骤详解
Apr 06 PHP
Laravel框架集合用法实例浅析
May 14 PHP
PHP连接SQL server数据库测试脚本运行实例
Aug 24 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内存使用情况如何获取
2015/10/10 PHP
Yii2框架数据验证操作实例详解
2018/05/02 PHP
疯狂Jquery第一天(Jquery学习笔记)
2012/05/11 Javascript
JavaScript 图像动画的小demo
2012/05/23 Javascript
JavaScript获取图片的原始尺寸以宽度为例
2014/05/04 Javascript
JavaScript字符串对象substring方法入门实例(用于截取字符串)
2014/10/17 Javascript
jQuery 插件开发指南
2014/11/14 Javascript
jQuery中height()方法用法实例
2014/12/24 Javascript
jquery正则表达式验证(手机号、身份证号、中文名称)
2015/12/31 Javascript
深入浅析AngularJS中的module(模块)
2016/01/04 Javascript
体验jQuery和AngularJS的不同点及AngularJS的迷人之处
2016/02/02 Javascript
js实现获取鼠标当前的位置
2016/12/14 Javascript
vuejs通过filterBy、orderBy实现搜索筛选、降序排序数据
2020/10/26 Javascript
Angular动态添加、删除输入框并计算值实例代码
2017/03/29 Javascript
微信小程序中的onLoad详解及简单实例
2017/04/05 Javascript
vue2.0 datepicker使用方法
2018/02/04 Javascript
JS实现获取进今年第几天是周几的方法分析
2018/06/27 Javascript
基于mpvue搭建微信小程序项目框架的教程详解
2019/04/10 Javascript
使用pdb模块调试Python程序实例
2015/06/02 Python
python opencv 批量改变图片的尺寸大小的方法
2019/06/28 Python
python实现人工智能Ai抠图功能
2019/09/05 Python
基于Python+Appium实现京东双十一自动领金币功能
2019/10/31 Python
PyTorch中 tensor.detach() 和 tensor.data 的区别详解
2020/01/06 Python
pip安装提示Twisted错误问题(Python3.6.4安装Twisted错误)
2020/05/09 Python
python3.7+selenium模拟淘宝登录功能的实现
2020/05/26 Python
如何设置PyCharm中的Python代码模版(推荐)
2020/11/20 Python
CSS3实现任意图片lowpoly动画效果实例
2017/05/11 HTML / CSS
香港No.1得奖零食网:香港零食大王
2016/07/22 全球购物
英国灯具和灯泡网上商店:Lights.co.uk
2018/02/02 全球购物
运动会方阵口号
2014/06/07 职场文书
护理专业毕业生自荐信
2014/06/15 职场文书
廉洁自律承诺书2015
2015/01/22 职场文书
军训心得体会范文(2016最新篇)
2016/01/11 职场文书
导游词之杭州西湖
2019/09/19 职场文书
golang json数组拼接的实例
2021/04/28 Golang
详解JavaScript中的执行上下文及调用堆栈
2021/04/29 Javascript