php函数传值的引用传递注意事项分析,php函数_PHP教程
程序员文章站
2022-04-05 16:35:43
...
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面向对象程序设计入门教程》、《PHP数学运算技巧总结》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php正则表达式用法总结》、及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
推荐阅读
-
php函数的传值与传址(引用)详解_PHP教程
-
PHP函数in_array()如何检查数组中的值_PHP教程
-
php定义一个参数带有默认值的函数实例分析_PHP
-
php 引用只允许定义在函数参数中,实时传递引用是禁止的
-
php函数指定默认值方法的小例子_PHP教程
-
PHP-CGI进程CPU 100% 与 file_get_contents 函数的关系分析_PHP教程
-
分析PHP的similar_text函数_PHP教程
-
ThinkPHP中公共函数路径和配置项路径的映射分析,thinkphp函数_PHP教程
-
php函数间的参数传递(值传递/引用传递)
-
PHP stripos()函数及注意事项的分析