CodeSky 代码之空

随手记录自己的学习过程

PHP Call-time pass-by-reference has been removed 错误解决

2014-01-24 14:34分类: PHP评论: 0

依旧是做到题目的时候发现了这个问题,可能是PHP版本不同引发的问题,然后默默的搜索了一下。

按引用传参,其实只用在定义时指定"&"即可,调用时不用写,只不过一直以来都这么写也没报过错,看来是5.4版增强了检查,不允许这种调用了。 调用时去掉"&",只保留方法定义中的"&",这次一切OK了。

本来题目中是让我这么写的:

1	$num = 10;
2	function demo($number) {
3		$number = $number + 20;
4	}
5
6	demo(&$num);
7	echo $num,"\n";
8

然后报错了,现在我改成:

1	$num = 10;
2	function demo(&$number) {
3		$number = $number + 20;
4	}
5
6	demo($num);
7	echo $num,"\n";
8

就没事了,定义时在函数中也就是function时嘛~

评论 (0)