PHP Call-time pass-by-reference has been removed 错误解决
依旧是做到题目的时候发现了这个问题,可能是PHP版本不同引发的问题,然后默默的搜索了一下。
按引用传参,其实只用在定义时指定"&"
即可,调用时不用写,只不过一直以来都这么写也没报过错,看来是5.4版增强了检查,不允许这种调用了。
调用时去掉"&"
,只保留方法定义中的"&"
,这次一切OK了。
本来题目中是让我这么写的:
$num = 10;
function demo($number) {
$number = $number + 20;
}
demo(&$num);
echo $num,"\n";
然后报错了,现在我改成:
$num = 10;
function demo(&$number) {
$number = $number + 20;
}
demo($num);
echo $num,"\n";
就没事了,定义时在函数中也就是function
时嘛~
植入部分
如果您觉得文章不错,可以通过赞助支持我。
如果您不希望打赏,也可以通过关闭广告屏蔽插件的形式帮助网站运作。