只有variables引用应该由引用返回 – Codeigniter

服务器PHP升级之后,我在Apache 2.0上获得了PHP 5.6.2版的以下错误

A PHP Error was encountered Severity: Notice Message: Only variable references should be returned by reference Filename: core/Common.php Line Number: 257 

我该如何解决这个问题?

编辑文件名:core / Common.php,行号:257

之前

 return $_config[0] =& $config; 

 $_config[0] =& $config; return $_config[0]; 

更新

由NikiC添加

在PHP中,赋值expression式总是返回分配的值。 所以$ _config [0] =&$ config返回$ config – 但不是variables本身,而是其值的副本。 而返回一个临时值的引用不会特别有用(改变它什么也不会做)。

更新(来自评论)

此修复程序已合并到CI 2.2.1( https://github.com/bcit-ci/CodeIgniter/commit/69b02d0f0bc46e914bed1604cfbd9bf74286b2e3 )。 升级而不是修改核心框架文件更好。

对于Codeigniter或CI 3.0,这对我来说工作得很好:

编辑文件名:core / Common.php,行号:257

删除此代码:

返回$ _config [0] =&$configuration;

只需添加以下代码:

$ _config [0] =&$ config;
返回$ _config [0];

我用下面的代码解决了我的问题:

 Edit filename: core/Common.php, line number: 257 Before return $_config[0] =& $config; After $_config[0] =& $config; return $_config[0]; 

编辑文件名:core / Common.php,行号:257

之前

 return $_config[0] =& $config; 

 $_config[0] =& $config; return $_config[0]; 

该解决scheme将正常工作,谢谢

在具有Config问题的CI新版本或更旧版本Common.php中未被清除。 所以我们将它改为自己进入你的应用程序文件夹,然后转到>>系统>>核心>> common.php

然后find它return $_config[0] =& $config; 并改为

 $_config[0] =& $config; return $_config[0]; 

对于Codeigniter或CI 3.0这是工作

编辑文件名:core / Common.php,行号:257

之前

返回$ _config [0] =&$configuration;

$ _config [0] =&$ config; 返回$ _config [0];

这已经在codeigniter 2.2.1修改…通常不是修改核心文件的最佳做法,我会经常检查更新和2.2.1出来2015年1月

更改core / Common.php行号:257代码

 $_config[0] =& $config; return $_config[0]; 

通过代码中的这一行修复了这个问题

"return $_config[0] =& $config;" with this line of code "$_config[0] =& $config; return $_config[0];"

在257行的system/core/Common.php文件中。

重写codeigniter的core.common文件不是一个好主意。 因为这是更多的testing和系统文件….

我为这个问题做了一个解决scheme。 在你的ckeditor_helper.php文件中65

 if($k !== end (array_keys($data['config']))) { $return .= ","; } 

将其更改为 – >

  $segment = array_keys($data['config']); if($k !== end($segment)) { $return .= ","; } 

我认为这是最好的解决scheme,然后你的问题通知将消失。

在system / core / Common.php中更改行号:257,并提供下面的工作代码。

 $_config[0] =& $config; return $_config[0]; 

谢谢