咨询热线:4006-75-4006

售前:9:00-23:30    备案:9:00-18:00    技术:7*24h

PHP-Only variables should be passed by reference错误

2019-02-08 11:52:23 6670次

Only variables should be passed by reference,即该方法的变量(variables )只能通过引用(reference)来传递。一般是传参导致的错误。


常见情况,直接拿explode()的结果去传入给某个方法,而这个方法的变量(variables )只能通过引用(reference)来传递。


 例如, 



 $date = '2019-01-11';

$day  = array_pop(explode('-',$date));

这里explode()返回的是一个数组(array)的值(即,具体的内容),而array_pop()的变量要求是一个引用(reference)。


具体见文档 mixed array_pop ( array &$array )。


类似的array_shift(),end(),prev()等等都会报以上的错误。 


【解决办法】:

将explode()返回的数组先赋值给一个变量,再将变量传入该方法即可。 


例如, 


 $date = '2019-01-11';

 $arrDate = explode('-',$date);

 $day  = array_pop($arrDate);


首页
最新活动
个人中心