Only variables should be assigned by reference with function

浪子不回头ぞ 提交于 2019-12-06 21:21:40

问题


I use old version of Codeigniter framework. With new version of php I am gettings this error: Only variables should be assigned by reference

I am wondering if this is safe bugfix: Changing:

 $this->_base_classes =& is_loaded();

to

$assign = is_loaded();    
$this->_base_classes =& $assign;

Is that the same?


回答1:


Please see this url

https://github.com/bcit-ci/CodeIgniter/issues/904

You can go to file: system/core/Loader.php Then file: system/core/Common.php Line 190 there should be:

function &is_loaded($class = '')



回答2:


remove this in line 150 from system/core/Loader.php

$this->_base_classes =& is_loaded(); ..




回答3:


This is an codeigniter bug in which the old version does not support anymore the mysql.

You can go to file: system/core/Loader.php Then file: system/core/Common.php Line 190 there should be:

//function is_loaded($class = '') >>> Edit this one like the expression below

  function &is_loaded($class = '')

function &is_loaded($class = '')

After that go to file: application/config/database.php and change the following below:

//$db['default']['dbdriver'] = 'mysql'; >>> Edit this one like the expression below.

$db['default']['dbdriver'] = 'mysqli';

I hope it works




回答4:


Change

$this->_base_classes =& is_loaded();

to

$this->_base_classes = $this->is_loaded();

Worked for me.



来源:https://stackoverflow.com/questions/41789659/only-variables-should-be-assigned-by-reference-with-function

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!