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 相关文章推荐
一个简单的PHP投票程序源码
Mar 11 PHP
php设计模式 Chain Of Responsibility (职责链模式)
Jun 26 PHP
php中global和$GLOBALS[]的分析之一
Feb 02 PHP
apache php模块整合操作指南
Nov 16 PHP
php使用curl存储cookie的示例
Mar 31 PHP
PHP学习笔记(二) 了解PHP的基本语法以及目录结构
Aug 04 PHP
PHP register_shutdown_function()函数的使用示例
Jun 23 PHP
分享PHP计算两个日期相差天数的代码
Dec 23 PHP
PHP入门教程之数学运算技巧总结
Sep 11 PHP
php获取flash尺寸详细数据的方法
Nov 12 PHP
为何说PHP引用是个坑,要慎用
Apr 02 PHP
Thinkphp 框架扩展之应用模式实现方法分析
Apr 27 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
全国FM电台频率大全 - 23 四川省
2020/03/11 无线电
PHP操作文件方法问答
2007/03/16 PHP
解决cPanel无法安装php5.2.17
2014/06/22 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(六)
2014/06/23 PHP
PHP文件及文件夹操作之创建、删除、移动、复制
2016/07/13 PHP
PHP实现图片的等比缩放和Logo水印功能示例
2017/05/04 PHP
jQuery中读取json文件示例代码
2013/05/10 Javascript
输入自动提示搜索提示功能的使用说明:sugggestion.txt
2013/09/02 Javascript
js禁止页面刷新禁止用F5键刷新禁止右键的示例代码
2013/09/23 Javascript
javascript多行字符串的简单实现方式
2015/05/04 Javascript
JS+CSS实现自动切换的网页滑动门菜单效果代码
2015/09/14 Javascript
基于Jquery代码实现支持PC端手机端幻灯片代码
2015/11/17 Javascript
详解WordPress开发中get_current_screen()函数的使用
2016/01/11 Javascript
jQuery toggle 代替方法
2016/03/22 Javascript
JS实现颜色动态淡化效果
2017/03/06 Javascript
vue.js默认路由不加载linkActiveClass问题的解决方法
2017/12/11 Javascript
全面介绍vue 全家桶和项目实例
2017/12/27 Javascript
JS/HTML5游戏常用算法之路径搜索算法 随机迷宫算法详解【普里姆算法】
2018/12/13 Javascript
微信小程序 swiper 组件遇到的问题及解决方法
2019/05/26 Javascript
Vue使用localStorage存储数据的方法
2019/05/27 Javascript
JS去除字符串最后的逗号实例分析【四种方法】
2019/06/20 Javascript
Python数据分析之双色球统计两个红和蓝球哪组合比例高的方法
2018/02/03 Python
python 划分数据集为训练集和测试集的方法
2018/12/11 Python
python实现替换word中的关键文字(使用通配符)
2020/02/13 Python
购买原创艺术品:Zatista
2019/11/09 全球购物
戴尔荷兰官方网站:Dell荷兰
2020/10/04 全球购物
解释DataSet(ds) 和 ds as DataSet 的含义
2014/07/27 面试题
汽车专业学生自我评价
2014/01/19 职场文书
投标担保书范文
2014/04/02 职场文书
《鹬蚌相争》教学反思
2014/04/22 职场文书
学术诚信承诺书
2014/05/26 职场文书
2014旅游局党组书记党建工作汇报材料
2014/11/02 职场文书
小学六一主持词开场白
2015/05/28 职场文书
学籍证明模板
2015/06/18 职场文书
2016年寒假学习心得体会
2015/10/09 职场文书
python实现自动化群控的步骤
2021/04/11 Python