Laravelのnamespace(名前空間)とは?超初心者向けにシンプルに分かりやすく解説

[st-kaiwa3 r]よくControllerとかに、namespaceって書いてあるのがあるけど、あれなんなの?[/st-kaiwa3]

namespace(名前空間)は、そのファイルがある場所のパスを示すものです。

例えば、上のCategoryController.phpというファイルなら、
Laravelプロジェクトフォルダ(サイトのフォルダ)→app→Http→Controllersというフォルダの中に入っているので、
namespaceの所にも同じパスが書かれています。

namespaceによって、Laravelのシステムは、どのファイルがどこにあるのかを管理していると考えてください。

また、namespaceがある事で、このパスを省略できてるとも言えます。

例えば、web.php(routes)上では、Route::get(‘/home’, ‘HomeController@index’);のような書き方をしますが、これも、namespace上でパスをすでに指定してあるため、

いちいち、‘App\Http\Controllers\HomeController@index’
のように書く必要がないというわけです。

namespaceは、基本的にイジる必要はありません。消してもいけませんので、そのままにしておいてください。手動で書く時は、今話したようにファイルまでのパスを単語の先頭を大文字にして書きます。

[st-kaiwa1 r]バックスペースは、書体やエディタによっては¥マークになりますが、そのままで問題ないよ。[/st-kaiwa1]

シェアする

  • このエントリーをはてなブックマークに追加

フォローする