5.6.0.2.jaへのアップデート時に Class 'DateTime' not found エラー

2013年4月29日 at 0:24

concrete5のバージョンを最新化するべく、

 5.4.1.1.1.ja → 5.4.2.2.ja → 5.5.2.1.ja → 5.6.0.2.ja

と作業していたところ、5.6.0.2.ja へのアップデート処理時に、

 Fatal error: Class 'DateTime' not found in
 /home/~/public_html/updates/concrete5.6.0.2.ja/concrete/core/helpers/date.php on line 82

が出てしまいました。

このエラーが発生する原因はPHPのバージョンが古いためとのことでした。
 Fatal error: Class 'DateTime' not found

そこで、
1)レンタルサーバのPHPバージョンを、「5.1.6 → 5.3.3」に変更し、
2)いったん、「/config/site.php 」を 5.5.2.1.ja のファイルに戻し、
3)また、DBも全テーブルを削除した上、バックアップしてあった 5.5.2.1.ja のDBをインポートしなおした上、
4)もう一度、管理画面からアップデートを実行、
で、無事アップデートできました。

以上、同じところで引っ掛かる方が居るかもしれませんので、ご参考までに。

タグ:

Re: 5.6.0.2.jaへのアップデート時に Class 'DateTime' not found エラー

2015年3月24日 at 2:37
5.5.2.1.ja → 5.6.3.3.ja へのアップデートを行っていたところ、

また
Fatal error: Class 'DateTime' not found in
/home/~/public_html/updates/concrete5.6.3.3.ja/concrete/core/helpers/date.php on line 66
が出てしまいました。

今度はレンタルサーバのPHPバージョンを 5.5.19 にしておいたのですが発生してしまいました。

そこで、もしかしたら・・・と思いついて、
PHP5.5.19 → PHP5.3.3
に変更してみたところ、解決し、無事アップデートに成功しました。

これまた、ご参考まで。
 

Re: 5.6.0.2.jaへのアップデート時に Class 'DateTime' not found エラー

2015年3月24日 at 4:29
DateTimeクラスが存在しないということは考えにくいので、特殊な環境ではないかと思います。可能であれば、レンタルサーバーの事業者とプランも共有いただければと思います。よろしくお願いします。
 

Re: 5.6.0.2.jaへのアップデート時に Class 'DateTime' not found エラー

2015年3月24日 at 15:55
そうですね。
確かにDateTimeクラスがなくなったとは考えにくい・・・

レンタルサーバはminibirdです。
http://www.minibird.jp/

設定でPHPのバージョンを選択できるので、私の場合「PHP 5.5.19」にしたところ、エラーが発生したものです。
http://www.minibird.jp/man/homepage_program_php_ver.php