PHP函数传值的引用传递怎么做,什么问题要关注
导读:这篇文章给大家分享的是“PHP函数传值的引用传递怎么做,什么问题要关注”,文中的讲解内容简单清晰,对大家认识和了解都有一定的帮助,对此感兴趣的朋友,接下来就跟随小编一起了解一下“PHP函数传值的引用传递怎么做,什么问题要关注”吧。 本...
这篇文章给大家分享的是“PHP函数传值的引用传递怎么做,什么问题要关注”,文中的讲解内容简单清晰,对大家认识和了解都有一定的帮助,对此感兴趣的朋友,接下来就跟随小编一起了解一下“PHP函数传值的引用传递怎么做,什么问题要关注”吧。本文实例讲述了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函数传值的引用传递怎么做,什么问题要关注已经有了进一步的了解。大家如果还想学习更多知识,欢迎关注网络,小编将为大家输出更多高质量的实用文章!
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: PHP函数传值的引用传递怎么做,什么问题要关注
本文地址: https://pptw.com/jishu/650977.html