php函数传值的引用传递注意事项分析


Posted in PHP onJune 25, 2016

本文实例讲述了php函数传值的引用传递注意事项。分享给大家供大家参考,具体如下:

Strict standards: Only variables should be passed by reference

网上查到资料有这么一句话:

在php5.3以上版本会出这个问题,应该也和php的配置有关,只要把这一句拆成两句就没有问题了。因为array_walk的参数是引用传递的,5.3以上默认只能传递具体的变量,而不能通过函数返回值。当然你也可以修改php.ini 里的 error_reporting = E_ALL | E_STRICT,但这终究不符合规范。

$suffix = array_pop(explode(".",$file_name));

为什么高版本的会这样子限制呢?

我去看手册中的函数原型:

mixed array_pop ( array &$array )
bool array_walk ( array &$array , callable $funcname [, mixed $userdata = NULL ] )

&符号指定了变量传入进去,是引用方式传递。

改为:

$file_name_arr = explode(".",$file_name);
$suffix = array_pop($file_name_arr);

就可以。

实际上也只是报出一个警告。不是致命错误。正常结果是能够得到。比如这里得到文件名的后缀,是正常的。

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

PHP 相关文章推荐
JAVA/JSP学习系列之四
Oct 09 PHP
4.与数据库的连接
Oct 09 PHP
使用无限生命期Session的方法
Oct 09 PHP
PHP中几个常用的魔术常量
Feb 23 PHP
php在程序中将网页生成word文档并提供下载的代码
Oct 09 PHP
php中require和require_once的区别说明
Feb 27 PHP
支付宝接口开发集成支付环境小结
Mar 17 PHP
php生成数字字母的验证码图片
Jul 14 PHP
Yii中实现处理前后台登录的新方法
Dec 28 PHP
thinkPHP框架可添加js事件的分页类customPage.class.php完整实例
Mar 16 PHP
Thinkphp5 如何隐藏入口文件index.php(URL重写)
Oct 16 PHP
Yii框架组件的事件机制原理与用法分析
Apr 07 PHP
php好代码风格的阶段性总结
Jun 25 #PHP
php编译安装php-amq扩展简明教程
Jun 25 #PHP
将PHP的session数据存储到数据库中的代码实例
Jun 24 #PHP
php自动载入类用法实例分析
Jun 24 #PHP
php模拟post上传图片实现代码
Jun 24 #PHP
一个简单安全的PHP验证码类 附调用方法
Jun 24 #PHP
java微信开发之上传下载多媒体文件
Jun 24 #PHP
You might like
php学习笔记 面向对象中[接口]与[多态性]的应用
2011/06/16 PHP
关于PHP语言构造器介绍
2013/07/08 PHP
PHP连接SQLServer2005的方法
2015/01/27 PHP
ajax 缓存 问题 requestheader
2010/08/01 Javascript
Javascript Throttle & Debounce应用介绍
2013/03/19 Javascript
jqGrid随窗口大小变化自适应大小的示例代码
2013/12/28 Javascript
详解AngularJS中自定义指令的使用
2015/06/17 Javascript
JavaScript编写简单的计算器
2015/11/25 Javascript
js组件SlotMachine实现图片切换效果制作抽奖系统
2016/04/17 Javascript
jQuery javascript获得网页的高度与宽度的实现代码
2016/04/26 Javascript
javascript中活灵活现的Array对象详解
2016/11/30 Javascript
基于vue.js实现图片轮播效果
2016/12/01 Javascript
js代码延迟一定时间后执行一个函数的实例
2017/02/15 Javascript
js中字符型和数值型数字的互相转化方法(必看)
2017/04/25 Javascript
BootStrap自定义popover,点击区域隐藏功能的实现
2018/01/23 Javascript
浅谈JS对象添加getter与setter的5种方法
2018/06/09 Javascript
Vue导出页面为PDF格式的实现思路
2018/07/31 Javascript
使用element-ui table expand展开行实现手风琴效果
2019/03/15 Javascript
vue中根据时间戳判断对应的时间(今天 昨天 前天)
2019/12/20 Javascript
[14:36]2014 DOTA2国际邀请赛中国区预选赛5.21 Orenda VS NE
2014/05/22 DOTA
[48:12]Secret vs Optic Supermajor 胜者组 BO3 第三场 6.4
2018/06/05 DOTA
简单实现python爬虫功能
2015/12/31 Python
Django学习笔记之ORM基础教程
2018/03/27 Python
Pytorch中实现只导入部分模型参数的方式
2020/01/02 Python
selenium设置浏览器为headless无头模式(Chrome和Firefox)
2021/01/08 Python
CSS3盒子模型详解
2013/04/24 HTML / CSS
基于HTML5+CSS3实现简单的时钟效果
2017/09/11 HTML / CSS
阿玛尼美国官方网站:Armani.com
2016/11/25 全球购物
HashMap和Hashtable的区别
2013/05/18 面试题
神路信息Java面试题目
2013/03/31 面试题
校本教研工作方案
2014/01/14 职场文书
北体毕业生求职信
2014/02/28 职场文书
小学教师读书活动总结
2014/07/08 职场文书
自我推荐信怎么写
2015/03/24 职场文书
营运督导岗位职责
2015/04/10 职场文书
Win11 KB5015814遇安装失败 影响开始菜单性能解决方法
2022/07/15 数码科技