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 相关文章推荐
在线增减.htpasswd内的用户
Oct 09 PHP
php中全局变量global的使用演示代码
May 18 PHP
使用php shell命令合并图片的代码
Jun 23 PHP
iis下php mail函数的sendmail配置方法(官方推荐)
Apr 25 PHP
在yii中新增一个用户验证的方法详解
Jun 20 PHP
PHP中的reflection反射机制测试例子
Aug 05 PHP
php中header设置常见文件类型的content-type
Jun 23 PHP
php搜索文件程序分享
Oct 30 PHP
yii2中使用Active Record模式的方法
Jan 09 PHP
Symfony2开发之控制器用法实例分析
Feb 05 PHP
PHP 数组基本操作方法详解
Jun 17 PHP
ThinkPHP5.0框架控制器继承基类和自定义类示例
May 25 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
使用 eAccelerator加速PHP代码的方法
2007/09/30 PHP
PHP 函数语法介绍一
2009/06/14 PHP
php foreach 参数强制类型转换的问题
2010/12/10 PHP
PHP 获取远程网页内容的代码(fopen,curl已测)
2011/06/06 PHP
php有道翻译api调用方法实例
2014/12/22 PHP
用JavaScript实现UrlEncode和UrlDecode的脚本代码
2008/07/23 Javascript
jQueryPad 实用的jQuery测试工具(支持IE,chrome,FF)
2010/05/22 Javascript
JavaScript高级程序设计 读书笔记之九 本地对象Array
2012/02/27 Javascript
Web开发之JavaScript
2012/03/29 Javascript
IE6兼容透明背景图片及解决方案
2015/08/19 Javascript
JavaScript设置、获取、清除单值和多值cookie的方法
2015/11/17 Javascript
15个常用的jquery代码片段
2015/12/19 Javascript
浅谈JavaScript变量的自动转换和语句
2016/06/12 Javascript
通过Ajax使用FormData对象无刷新上传文件方法
2016/12/08 Javascript
jquery图片放大镜效果
2017/06/23 jQuery
微信小程序点击控件修改样式实例详解
2017/07/07 Javascript
vue axios 表单提交上传图片的实例
2018/03/16 Javascript
vue 实现全选全不选的示例代码
2018/03/29 Javascript
vue cli2.0单页面title修改方法
2018/06/07 Javascript
微信小程序使用scroll-view标签实现自动滑动到底部功能的实例代码
2018/11/09 Javascript
基于JS实现操作成功之后自动跳转页面
2020/09/25 Javascript
微信小程序实现简单的select下拉框
2020/11/23 Javascript
原生js实现九宫格拖拽换位
2021/01/26 Javascript
[01:05]DOTA2完美大师赛趣味视频之选手教你打职业
2017/11/23 DOTA
[00:59]PWL开团时刻DAY7——我在赶
2020/11/06 DOTA
Python中datetime常用时间处理方法
2015/06/15 Python
如何优雅地处理Django中的favicon.ico图标详解
2018/07/05 Python
Python将文本去空格并保存到txt文件中的实例
2018/07/24 Python
python爬虫框架scrapy实现模拟登录操作示例
2018/08/02 Python
学生信息管理系统Python面向对象版
2019/01/30 Python
CSS3效果:自定义“W”形运行轨迹实例
2017/03/29 HTML / CSS
经济学博士求职自荐信范文
2013/11/23 职场文书
研究生毕业鉴定
2014/01/29 职场文书
四年级科学教学反思
2014/02/10 职场文书
群众路线教育实践活动对照检查材料
2014/09/22 职场文书
win10忘记pin密码登录不了怎么办?win10忘记pin密码登不进去的解决方法
2022/07/07 数码科技