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 Cookie的一个使用注意点
Nov 08 PHP
Admin generator, filters and I18n
Oct 06 PHP
php中长文章分页显示实现代码
Sep 29 PHP
ThinkPHP调用common/common.php函数提示错误function undefined的解决方法
Aug 25 PHP
php生成html文件方法总结
Dec 01 PHP
Symfony2中被遗弃的getRequest()方法分析
Mar 17 PHP
PHP实现清除MySQL死连接的方法
Jul 23 PHP
PHP数组生成XML格式数据的封装类实例
Nov 10 PHP
Yii2框架实现数据库常用操作总结
Feb 08 PHP
thinkPHP5框架实现基于ajax的分页功能示例
Jun 12 PHP
php判断/计算闰年的方法小结【三种方法】
Jul 06 PHP
Yii框架模拟组件调用注入示例
Nov 11 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
检查url链接是否已经有参数的php代码 添加 ? 或 &amp;
2010/02/09 PHP
PHP中创建空文件的代码[file_put_contents vs touch]
2012/01/20 PHP
一个PHP的ZIP压缩类分享
2014/05/04 PHP
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
2014/06/09 PHP
php使用post数组的键值创建同名变量并赋值的方法
2015/04/03 PHP
json原理分析及实例介绍
2012/11/29 Javascript
使用javascript实现页面定时跳转总结篇
2013/09/21 Javascript
前端开发过程中浏览器版本的两种判定方法
2013/10/30 Javascript
javascript如何实现360度全景照片问题汇总
2016/04/04 Javascript
BootstrapTable+KnockoutJS自定义T4模板快速生成增删改查页面
2016/08/01 Javascript
jQuery插件echarts设置折线图中折线线条颜色和折线点颜色的方法
2017/03/03 Javascript
微信小程序文字显示换行问题
2019/07/28 Javascript
Node 代理访问的实现
2019/09/19 Javascript
JavaScript布尔运算符原理使用解析
2020/05/06 Javascript
nuxt 路由、过渡特效、中间件的实现代码
2020/11/06 Javascript
vue实现表格合并功能
2020/12/01 Vue.js
跟老齐学Python之折腾一下目录
2014/10/24 Python
python开发之for循环操作实例详解
2015/11/12 Python
巧用python和libnmapd,提取Nmap扫描结果
2016/08/23 Python
Python常见字符串操作函数小结【split()、join()、strip()】
2018/02/02 Python
python利用smtplib实现QQ邮箱发送邮件
2020/05/20 Python
在python中pandas的series合并方法
2018/11/12 Python
python opencv将表格图片按照表格框线分割和识别
2019/10/30 Python
Python 下载及安装详细步骤
2019/11/04 Python
pygame实现飞机大战
2020/03/11 Python
浅谈keras中的keras.utils.to_categorical用法
2020/07/02 Python
利用CSS3实现单选框动画特效示例代码
2016/09/26 HTML / CSS
运动会广播稿80字
2014/01/23 职场文书
校园安全广播稿
2014/02/08 职场文书
简洁的英文求职信范文
2014/05/03 职场文书
党员干部群众路线个人整改措施
2014/09/18 职场文书
党员反腐倡廉学习心得体会
2015/08/15 职场文书
银行客户经理培训心得体会
2016/01/09 职场文书
如何书写公司员工保密协议?
2019/06/27 职场文书
Python中快速掌握Data Frame的常用操作
2021/03/31 Python
解决hive中导入text文件遇到的坑
2021/04/07 Python