PHP实现函数内修改外部变量值的方法示例


Posted in PHP onDecember 28, 2018

本文实例讲述了PHP实现函数内修改外部变量值的方法。分享给大家供大家参考,具体如下:

直接上代码,如下:

$a_str = 'ab';
function change_val(){
  global $a_str; // 通过设置全局变量,修改变量值
  //$a_str = 'abc';
  $a_str = $a_str.'abc';
}
echo $a_str."<br>";
change_val();
echo $a_str."<br>";
echo str_repeat('#',20)."<br>";
$b_str = 'ab';
function change_val_1($s){
  $s = 'abc';
  //$s = $s.'abc';
  return $s; // 通过返回值,修改变量值
}
echo $b_str."<br>";
$b_str = change_val_1($b_str);
echo $b_str."<br>";
echo str_repeat('#',20)."<br>";
$c_str = 'ab';
function change_val_2(&$c_str){//引用调用
  //$c_str = 'abc';
  $c_str = $c_str.'abc';
}
echo $c_str."<br>";
change_val_2($c_str);
echo $c_str."<br>";

运行结果:

ab
ababc
####################
ab
abc
####################
ab
ababc

总结:

  • 尽量少用全局变量。全局变量会增加内存使用量。
  • 传值调用会创建一个副本,数据量很大时,会影响性能。
  • 引用调用时,函数接收的是变量地址,不会创建数据副本,效率高 。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
在Windows中安装Apache2和PHP4的权威指南
Oct 09 PHP
php缓冲 output_buffering和ob_start使用介绍
Jan 30 PHP
采用memcache在web集群中实现session的同步会话
Jul 05 PHP
PHP两种快速排序算法实例
Feb 15 PHP
PHP中使用foreach()遍历二维数组的简单实例
Jun 13 PHP
PHP字符串逆序排列实现方法小结【strrev函数,二分法,循环法,递归法】
Jan 13 PHP
php中通过eval实现字符串格式的计算公式
Mar 18 PHP
PHP的自定义模板引擎
Mar 24 PHP
PHP基于socket实现的简单客户端和服务端通讯功能示例
Jul 10 PHP
php中输出json对象的值(实现方法)
Mar 07 PHP
php7下的filesize函数
Sep 30 PHP
php设计模式之代理模式分析【星际争霸游戏案例】
Mar 23 PHP
PHP面向对象程序设计继承用法简单示例
Dec 28 #PHP
PHP抽象类基本用法示例
Dec 28 #PHP
php PDO属性设置与操作方法分析
Dec 27 #PHP
php实现的PDO异常处理操作分析
Dec 27 #PHP
CI框架网页缓存简单用法分析
Dec 26 #PHP
CI框架附属类用法分析
Dec 26 #PHP
Yii2.0 RESTful API 基础配置教程详解
Dec 26 #PHP
You might like
基于thinkPHP实现的微信自定义分享功能示例
2016/09/23 PHP
TP3.2批量上传文件或图片 同名冲突问题的解决方法
2017/08/01 PHP
js下通过prototype扩展实现indexOf的代码
2010/12/08 Javascript
IE6/7/8中Option元素未设value时Select将获取空字符串
2011/04/07 Javascript
ASP.NET jQuery 实例14 在ASP.NET form中校验时间范围
2012/02/03 Javascript
JavaScript面向对象之Prototypes和继承
2012/07/12 Javascript
jQuery带箭头提示框tooltips插件集锦
2014/11/17 Javascript
JavaScript Math.floor方法(对数值向下取整)
2015/01/09 Javascript
js验证身份证号有效性并提示对应信息
2015/10/19 Javascript
jQuery实现分隔条左右拖动功能
2015/11/21 Javascript
Javascript 判断两个IP是否在同一网段实例代码
2016/11/28 Javascript
jQuery和CSS仿京东仿淘宝列表导航菜单
2017/01/04 Javascript
Javascript 详解封装from表单数据为json串进行ajax提交
2017/03/29 Javascript
JS实现多张图片预览同步上传功能
2017/06/23 Javascript
使用vue-cli打包过程中的步骤以及问题的解决
2018/05/08 Javascript
layui switch 开关监听 弹出确定状态转换的例子
2019/09/21 Javascript
JS继承实现方法及优缺点详解
2020/09/02 Javascript
layui使用及简单的三级联动实现教程
2020/12/01 Javascript
wxPython事件驱动实例详解
2014/09/28 Python
Python爬取数据并写入MySQL数据库的实例
2018/06/21 Python
DJANGO-URL反向解析REVERSE实例讲解
2019/10/25 Python
python实现从wind导入数据
2019/12/03 Python
Django:使用filter的pk进行多值查询操作
2020/07/15 Python
Subside Sports德国:足球球衣和球迷商品
2019/06/08 全球购物
Crocs波兰官方商店:女鞋、男鞋、童鞋、洞洞鞋
2019/10/08 全球购物
Agoda中文官网:安可达(低价预订全球酒店)
2021/01/18 全球购物
项目建议书模板
2014/05/12 职场文书
冬季安全检查方案
2014/05/23 职场文书
人力资源管理专业自荐书
2014/07/07 职场文书
机械专业求职信范文
2014/07/15 职场文书
医德医魂心得体会
2014/09/11 职场文书
医生党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
质检员岗位职责范本
2015/04/07 职场文书
庆祝教师节主持词
2015/07/06 职场文书
2015初中教导处工作总结
2015/07/21 职场文书
Python数据类型最全知识总结
2021/05/31 Python