php5.4传引用时报错问题分析

本文实例分析了PHP5.4传引用时报错问题。分享给大家供大家参考,具体如下:

PHP5.3系列版本以及以前版本,传引用没有什么问题,升级PHP5.4以后,传引用的地方,全报错

Fatal error: Call-time pass-by-reference has been removed in F:\work\wamp\www\test\test.PHP on line 6。看一下下面的例子。

例1,递归传引用,在PHP 5.3及以及版本,测试结果

rush:PHP;"> PHP function test($aa,&$bb){ if($aa < $bb){ echo $bb."
"; $bb--; test($aa,&$bb); } } $aa = 3; $bb = 6; test($aa,&$bb); ?>

运行结果如下

6 5 4

PHP 5.4以后就不行了,我是用PHP 5.4.11测试的。报Fatal error: Call-time pass-by-reference has been removed in F:\work\wamp\www\test\test.PHP on line 6。

例2,PHP5.4.11上面测试,只测试传引用

rush:PHP;"> PHP function test($aa,&$bb){ if($aa < $bb){ $bb--; echo $bb."
"; //test($aa,$bb); //PHP5.4,PHP5.3及以前版本,输入结果是5 //test($aa,&$bb); //PHP5.3输入结果是5,PHP5.4及以后,报错Fatal error: Call-time pass-by-reference 。。。。 ?>

PHP5.4以后,定义时可以有&,调用加上&就会报错。这样调用感觉很怪。

例3,PHP5.4以及递归传引用

rush:PHP;"> PHP function test($aa,&$bb){ if($aa < $bb){ $bb--; echo $bb."
"; test($aa,$bb); } } $aa = 3; $bb = 6; test($aa,$bb); ?>

PHP5.2,PHP5.3,PHP5.4都可以运行,运行结果:

5 4 3

感觉这个5.3升到5.4有点坑爹,如果不知道改变的,升级就很郁闷了。

更多关于PHP错误与异常相关内容感兴趣的读者可查看本站专题:《PHP错误与异常处理方法总结》

希望本文所述对大家PHP程序设计有所帮助。

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...