首页 > PHP教程 > php开发知识文章

php程序错误Strict Standards: Only variables should be passed by reference in的解决方法

这个问题一般是由于引用传递参数引起的,解决方法是修改代码不使用引用传递,或者定义一个变量进行传参

解决方法是修改代码不使用引用传递,或者修改php配置文件,或者修改error_reporting 其值改为error_reporting = E_ALL& ~E_NOTICE,或者定义一个变量进行传参。

ECShop出现Strict Standards: Only variables should be passed by reference in的解决方法

解决办法:

打开cls_template.php文件中发现下面这段代码:

$tag_sel = array_shift(explode(' ', $tag));
//修改方法
$tagArr = explode(' ', $tag);
$tag_sel = array_shift($tagArr);

PHP版本是5.4.19,PHP5.3以上默认只能传递具体的变量,不能通过函数返回值传递,所以这段代码中的explode就得移出来重新赋值了

下面我们遇到这段代码,在php5.3以上版本,也会报错误。

$file_suffix = strtolower(array_pop(explode('.', $file_name)));
//修改方法
$array=explode('.', $file_name);
$file_suffix = strtolower(array_pop($array));
 

array_pop (array &$array)函数的参数为引用类型,所以我们要定义一个变量进行传参,不能一行写完。

以上就是本文php程序错误Strict Standards: Only variables should be passed by reference in的解决方法的全部内容,欢迎大家的学习。

关闭
感谢您的支持,我会继续努力!
扫码打赏,建议金额1-10元


提醒:打赏金额将直接进入对方账号,无法退款,请您谨慎操作。