codeigniter PHP发生错误

mi7gmzs6  于 2022-12-06  发布在  PHP
关注(0)|答案(2)|浏览(111)

我正在使用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

我不知道问题出在哪里,当然代码是正确的,但问题出在哪里。有什么建议吗?

mbskvtky

mbskvtky1#

&在PHP中用于通过引用将对象传递给方法/将新对象分配给变量。它在PHP 5中被弃用,因为PHP5通过引用传递所有对象,而其他变量默认为通过值传递。
若要修正此错误:

请更新至CodeIgniter的最新版本!

j91ykkif

j91ykkif2#

最近我遇到了同样的问题,我使用的是codeigniter 1.7和PHP 5.2.6一切都工作得很好,但在升级PHP到5.3后,下面的错误开始出现:-

Deprecated: Assigning the return value of new by reference is deprecated

其背后的原因和@Amal提到的一样,&在PHP中用于通过引用将对象传递给方法/将新对象分配给变量。它在PHP 5中被弃用,因为PHP5通过引用传递所有对象
有关详细信息,请参阅
Assigning the return value of new by reference is deprecated
因此,如果您从头开始创建代码,那么最好使用所有最新的东西,使用codeigniter 2.1.4
但是如果你的代码库是旧的codeigniter版本,那么最好降级你的PHP(不推荐),直到你升级到新的版本。

相关问题