我正在使用CodeIgniter而且我遇到了问题 代码非常简单,只需控制器中的几行,这就是我的控制器
<?php
class Site extends Controller {
function index() {
echo 'i am here';
}
}
这就是错误:
1- Deprecated: Assigning the return value of new by reference is deprecated in C:\wamp\www\ci\system\codeigniter\Common.php on line 130
2-Deprecated: Assigning the return value of new by reference is deprecated in C:\wamp\www\ci\system\codeigniter\Common.php on line 136
3-A PHP Error was encountered
Severity: 8192
Message: Assigning the return value of new by reference is deprecated
Filename: libraries/Loader.php
Line Number: 255
4-A PHP Error was encountered
Severity: 8192
Message: Assigning the return value of new by reference is deprecated
Filename: database/DB.php
Line Number: 133
我不知道问题出在哪里,当然代码是正确的,但问题出在哪里。有什么建议吗?
答案 0 :(得分:0)
&
将对象传递给方法/通过引用将新对象分配给变量。它在PHP 5中已弃用,因为PHP5通过引用传递所有对象,但其他vars默认按值。
要解决此错误:
真的更新到最新版本的CodeIgniter!
答案 1 :(得分:0)
最近我遇到了同样的问题,我使用的是codeigniter 1.7和PHP 5.2.6一切都运行良好,但在将PHP升级到5.3之后,以下错误开始出现: -
Deprecated: Assigning the return value of new by reference is deprecated
背后的原因与@Amal提到的相同,&amp;在PHP中用于将对象传递给方法/通过引用将新对象分配给变量。它在PHP 5中已弃用,因为PHP5通过引用传递所有对象
有关详细信息,请参阅
Assigning the return value of new by reference is deprecated
因此,如果您是从头开始创建代码,那么最好使用所有最新的东西,请使用codeigniter 2.1.4
但是如果你的代码库有一些旧的codeigniter版本,那么最好还是降低你的PHP(不推荐),直到你转到更新的版本为止。