【Laravel備忘録】
Laravelを学習中のエンジニア5年目社会人です。
今まで設計やテスト案件ばかりでしたが今年から開発案件に携われるようになったので自己学習とともに備忘録つけます。
今回の内容は下記です。
「Target class [○○Controller] does not exist.」が出る
某参考書を用いながら環境作って学習進めておりますが、結構な序盤でこのエラーに悩まされました。
理由から伝えますとPHPのバージョンと書き方の問題でした。
まず参考書のPHPのバージョンは7.2でした。
自分の環境のPHPは8.1でした。
PHP 8.1.12 (cli) (built: Oct 25 2022 18:16:21) (ZTS Visual C++ 2019 x64)
Copyright (c) The PHP Group
Zend Engine v4.1.12, Copyright (c) Zend Technologies
でエラーになったコードが下記です。
Route::get('hello', 'HelloController@index');
この書き方はPHPのバージョンが7.Xまでの書き方らしく8.1の環境ではエラーになるようです。
修正したコードがこちら
Route::get('hello', 'App\Http\Controllers\HelloController@index');
絶対パスという言い方で正しいかはわかりませんが、このような書き方をしないといけないようです。
ということで無事エラー解消されました。
エラー原因がなかなかわからないとイライラしますよね。。。
ではみなさん、良きエンジニアライフを。