狛ログ

2015年1月20日火曜日

Codeigniter 2.1.4 と PHP5.6 でのエラー。

オフィス狛 技術部です。

久しぶりの Codeigniter です。
今回、Codeigniter で作成したシステムをリニューアルする事になり、
PHPのバージョンを上げる事になりました。(PHP5.2→5.6)

早速、PHPのバージョンを上げて、プログラムは一切変えずに実行してみたところ・・・

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

どうやら、フレームワーク(Codeigniter)内部のエラーのようです。
エラー内容で検索すると、下記サイトが出てきました。

修正方法としては、上記サイトを参考に、
return $_config[0] =& $config;
という一文を
$_config[0] =& $config;
return $_config[0];
このように変えるだけです。

ちなみに、Codeigniter のバージョンを調べる方法ですが、

system/core/CodeIgniter.php 」に「 define('CI_VERSION', '2.1.4');
のように定義されています。

※昔のバージョンだと、定義してある箇所が違っているようなので、上記場所に無い場合、
こちら(CodeIgniter のバージョンの調べ方)の記事を参考にして調べた方が良いかもしれません。

覚悟をしていたものの・・・PHPのバージョンを上げるのは一苦労です。

,