#バドシス 〜 日々のことを続く限り書いてみようと思って 〜

頑張って日々のことを書いていこうと思います。

PHP7でcakephp2系を動かしてみたらエラーが出た。

詳細! PHP 7+MySQL 入門ノート

 

 

結論だけみたい人は、「CakePHPのバージョンを上げよう」からみるとスムーズです。

 

 

 

Error: Cannot use 'String' as class name as it is reserved

Stringというクラス名を使ってはいけないと怒られていますね。

なのでとりあえず、クラス名をStringCakeとしたらエラーは出なくなりました。

 

Error: Uncaught TypeError: Argument 1 passed to ErrorHandler::handleException() must be an instance of Exception

あら、こんどは根本的なエラー。

PHP7ってたしかエラーハンドル系をかなりいじったんだっけ・・・。

 

CakePHPのバージョンを上げよう

cakephpは基本的にライブラリ(lib)をいじっていなければそのままバージョンを上げることが可能なはずです。

なので、下記から最新の2系をダウンロードしてきて、自分のローカルのlibのバックアップを取った上で突っ込んでみました。

 

github.com

 

エラーが消えた!!

 

ただこんどはバージョンアップにおける問題が・・・。

 

Validation::notEmpty() is deprecated.

Deprecated (16384): Validation::notEmpty() is deprecated. Use Validation::notBlank() instead. [CORE/Cake/Utility/Validation.php, line 60]

 

notEmptyじゃなくて、notBlankを使ってくださいね。

 

だ、そうですので、一括置換!!

 

これで一応投稿までの一通りができるようになりました!

 

PHPのバージョンアップは怖いですね・・・。

 

 

詳細! PHP 7+MySQL 入門ノート

詳細! PHP 7+MySQL 入門ノート