database.phpにこんな感じのクラスを書ける。クラスをかけると言うことは、コンストラクタも書けるので、なんかラッパーしたいときはコンストラクタに追加実装することもできる。独自ErrorHandlerでcomposerからインストールできるやつはbootstrap.phpにErrorHandlerを追加でregisterすることで独自ErrorHandlerを利用できる。Localecakephpディレクトリが微妙に違うだけで、ISOコードがディレクトリ名なのも変わらなければファイル名がdefault.poなのも変わらない。関連クラスは、別のプラグインに移動されました。名前空間に移動されました。名前空間に移動する必要があります。App::buildCakePHP2.xのApp::buildは、各パッケージの場所を設定するためのもの。3.xではApp::buildはなくなった。composerのclasspathがかわりにうまいことやってくる(はず)だから。Application.phpCakePHPApplication.phpのbootstrap()がやってること。Model::queryCakePHPこんなピュアなSQL文を叩くことあるのかなって思うけど、DB接続してクエリ叩くだけならありうるかも。ソースコードを読む限りは以下のいずれかでいけるっぽい。skipLogCakePHPskipLogは2.xでも3.xでも変更はない。書き方としては3.xは全部書かないといけなくなった。3.xのブランチに切り替えてツールを実行したところでnamespaceなどが追記されるだけでindex.phpとか根本的なところは何も変わらないので、プレーンなプロジェクトを作成して、もとのコードをすこしずつ移植していくしかない。constructClassesCakePHPこのメソッドはコントローラに必要とされるモデルをロードします。このメソッドは別の視点からコントローラにアクセスする時に便利です。2.xみたいに第一引数にstringを入れたらエラーが出る。3.xだと、第一引数はnullでもいい。AppModelCakePHP2.xにあったモデル共通クラスのAppModelは3.xじゃ廃止されたっぽい。ModelがTableとQueryに分離したからしょうがないかもね。Tableを継承してAppTableみたいなことをしてくれってコメントがあった。特定の設定ファイルを読み込ませたいときにつかうPhpReaderは3じゃPhpConfigになる。PhpConfigするのはPhpReaderからいっしょ。クラスを代わりに使用できます。デフォルトはDashedRouteで、ルーティングはハイフンがベースになる。routes.phpをいじる。AppHelperCakePHP2.xにあったAppHelperは消えた。UrlHelperが一部機能を代替しているっぽい。set/getcakephp3.4とか3.6あたりから、プロパティを直接参照しないで、関数名set/getで始まるものを使うように推奨され始めている気がする。