ディレクトリ構成
全体像
コマンド”laravel new laravel_example”で、新規プロジェクト作成を行うと、以下のディレクトリ構成で作成されます。
laravel_example
├─app
│ ├─Console
│ ├─Exceptions
│ ├─Http
│ │ ├─Controllers
│ │ └─Middleware
│ ├─Models
│ └─Providers
├─bootstrap
│ └─cache
├─config
├─database
│ ├─factories
│ ├─migrations
│ └─seeders
├─public
├─resources
│ ├─css
│ ├─js
│ ├─lang
│ │ └─en
│ └─views
├─routes
├─storage
│ ├─app
│ │ └─public
│ ├─framework
│ │ ├─cache
│ │ │ └─data
│ │ ├─sessions
│ │ ├─testing
│ │ └─views
│ └─logs
├─tests
│ ├─Feature
│ └─Unit
└─vendor
├─asm89
│ └─stack-cors
│ └─src
├─ ・・・・・以下省略・・・・・・・
説明するのは、プロジェクトディレクトリ直下の各ディレクトリについてまとめます。
各フォルダの概要
| ディレクトリ | 概要 |
|---|---|
| appディレクトリ | メインのソースコードが入ります。 PHPで作成した、コントローラーやビュー、モデルなどのファイルを入れます。 |
| bootstrapディレクトリ | Laravelアプリを起動するための初期処理を行うためのファイルがあります。 |
| configディレクトリ | 設定ファイルが入ります。 DBの接続やログ出力の設定など、様々な設定ファイルがあります。 |
| databaseディレクトリ | DB関連のファイルがあります。 Laravelフレームワークの機能であるマイグレーションやシーダ(初期データ)などを扱います。 |
| publicディレクトリ | Webサーバーのルートディレクトリとして見られる場所で、ここにあるファイルが公開されます。javascriptやCSSなどが配置されます。 |
| resourcesディレクトリ | コンパイルされる前の、ビューやCSS、JavaScript、他の様々な言語のファイルも格納されます。 |
| routesディレクトリ | アプリケーションのルートを定義するファイルが格納されています。どこに、どのようにアクセスさせるかの設定ができます。 |
| storageディレクトリ | コンパイル済みのBladeテンプレート、セッションファイル、キャッシュファイル等が配置されます。 |
| testsディレクトリ | 自動テスト用のファイルが配置されています。 代表的なPHPUnitテストはデフォルトで格納済みで、そこに自動テストのファイルを作ったりします。 |
| vendorディレクトリ | Composerによる依存パッケージが配置されます。 |
よく使うディレクトリ
以下のディレクトリはよく使うので、覚えておくといいと思います。
- app
- database
- public
- resources
- routes
