時間がなかったためエラーメッセージすら確認出来ず
ブログで報告だけして家を出ました。(汗
日付が変わる寸前に帰宅後エラーメッセージを確認。
やはりサーバのPHPバージョンアップの影響ですね。
PHP5.3定番のエラーが出ていました。
Deprecated: Assigning the return value of new by reference is deprecated in...
Deprecated: Function ereg() is deprecated in...
PHP5.3以降で現れたこのあたりの『Deprecated』エラーは、
簡単に言うと『その書き方は推奨していないよ』ってな
いわばいらんお世話なエラーメッセージ。
PHP: PHP 5.3.x で推奨されない機能 - Manual
PHP 5.3.0 では新しく二つのエラーレベルが加わりました。 E_DEPRECATED と E_USER_DEPRECATED です。 E_DEPRECATED エラーレベルは、 特定の機能が推奨されないことを示すのに使います。 E_USER_DEPRECATED エラーレベルは、ユーザー定義のコードで推奨されない機能、たとえば E_USER_ERROR や E_USER_WARNING のようなものを示すのに使います。
これなら過去に何度か対応したことがあります。
php.iniに
error_reporting=E_ALL&~(E_NOTICE|E_DEPRECATED)
と記述してあげればいらんエラーメッセージが消えるはず。
ってあれ?
このサーバってphp.iniを個別に触れなかった気が…(汗
そうなるとec-cubeの『error_reporting』自体をいぢるしかないか。
ってことで『error_reporting』に↓を表記して終了。
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
早速確認をしてみたところ完全にエラーメッセージが消えていました。
深刻なエラーじゃなくて一安心です。
Tさまありがとうございました。
しかし修正自体は10分ほどで終わったのですが、
ココに書くのにエライ時間がかかってしまいました。(笑
以下いつもの通り私のメモ用として
==================================================================▼サーバのPHPバージョンアップによる『Deprecated』エラー修正
変更前PHPバージョン:PHP5.2.17
変更後PHPバージョン:PHP5.3.28
------------------------------------------------------------------\eccube\data\class/SC_Initial.php
101行付近
-------------------------------------------------------------------変更前
-------------------------------------------------------------------
function setErrorReporting() { error_reporting(E_ALL & ~E_NOTICE); }
-------------------------------------------------------------------
-------------------------------------------------------------------変更後
-------------------------------------------------------------------
function setErrorReporting() { error_reporting(E_ALL & ~E_NOTICE); error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED); }
-------------------------------------------------------------------
0 件のコメント:
コメントを投稿