フォルダ構造
- モデル ディレクトリがないのはなぜですか?
- #ルート ディレクトリ
- アプリ ディレクトリ
- 設定ディレクトリ
- データベース ディレクトリ
- パブリック ディレクトリ
- リソース ディレクトリ
- ルート ディレクトリ ##ストレージ ディレクトリ
- ##テスト ディレクトリ
- #ベンダー ディレクトリ
- ##アプリ ディレクトリ
- ##ブロードキャスト ディレクトリ
- ##コンソール ディレクトリ
- イベント ディレクトリ
- HTTP ディレクトリ
- #ジョブ ディレクトリ
- #リスナー ディレクトリ #メール ディレクトリ
- #通知ディレクトリ
- ポリシー ディレクトリ
- プロバイダー ディレクトリ
- ルール ディレクトリ
- はじめに
- ルート ディレクトリ
- アプリケーション ディレクトリ
- ブロードキャスト
ディレクトリ
- コンソール
ディレクトリ
- ##イベント
カタログ
- 例外
カタログ
- ## httpディレクトリ
- ディレクトリ
- ディレクトリ
- ディレクトリ
- ディレクトリ
- カタログ
#プロバイダー
カタログ ルール
カタログ
- ブロードキャスト
Laravel のフォルダー構造
app ディレクトリに配置され、開発者が他の場所に配置できるようにしています。
ルート ディレクトリ
App ディレクトリapp ディレクトリには、アプリケーションコード。アプリケーション内のほぼすべてのクラスをここに配置する必要があります。このディレクトリの詳細については後ほど詳しく見ていきます。
bootstrap ディレクトリには、Bootstrap フレームワークの
app.php が含まれています### 書類。このディレクトリには、cache
ディレクトリも含まれています。cache
ディレクトリには、ルーティング キャッシュ ファイルやサービス キャッシュ ファイルなど、パフォーマンスを向上させるためにフレームワークによって生成されたファイルが保存されます。
名前が示すように、すべての設定ファイルが含まれるディレクトリアプリケーションの。利用可能なすべてのオプションを理解するために、これらのドキュメントに目を通しておくことをお勧めします。
ディレクトリには、データ入力、移行ファイル、およびモデル ファクトリ クラスが含まれます。 SQLite データベースの格納ディレクトリとしても使用できます。
このディレクトリには、エントリ ファイル index が含まれています。 php
、アプリケーションに入るすべてのリクエストのエントリ ポイントです。このディレクトリには、リソース ファイル (画像、JavaScript、CSS など) の一部も含まれています。
このディレクトリには、ビューと未コンパイルのリソース ファイル ( LESS、SASS、または JavaScript)。このディレクトリには、すべての言語ファイルも含まれています。
Routes ディレクトリ
routes
このディレクトリには、アプリケーションのすべてのルート定義が含まれています。Laravel には、デフォルトでいくつかのルーティング ファイルが含まれています: web.php
、api .php
、console.php
、および channels.php
。
web.php
ファイルには、セッション状態、CSRF 保護、Cookie 暗号化を提供する web
ミドルウェア グループに配置された RouteServiceProvider
ルートが含まれています。 。アプリケーションがステートレスな RESTful API を提供していない場合は、すべてのルートを web.php
ファイルで定義する必要があります。 .
api.php
ファイルには、api
ミドルウェア グループに配置された RouteServiceProvider
ルートが含まれており、周波数制限を提供します。これらのルートはステートレスであるため、これらのルートを介してアプリケーションに送信されるリクエストはトークンを介して認証されることを目的としており、セッション状態にはアクセスできません。
console.php
このファイルには、すべてのコンソール コマンドベースのクロージャ関数が定義されています。各クロージャー関数はコマンド インスタンスにバインドされており、コマンド ライン IO メソッドとの簡単な対話が可能になります。これらのファイルは HTTP ルートを定義しませんが、アプリケーションへのコンソールベースのエントリ ポイント (ルート) も定義します。
channels.php
アプリケーションでサポートされているすべてのイベント ブロードキャスト チャネルを登録する場所。
ストレージ ディレクトリ
storage
このディレクトリには、コンパイルされた Blade テンプレートとセッション セッション生成が含まれますファイル、キャッシュ ファイル、およびフレームワークによって生成されるその他のファイル。このディレクトリは、app
、framework
、および logs
の 3 つのサブディレクトリに分割されています。 app
ディレクトリは、アプリケーションによって生成されたファイルを保存するために使用できます。 framework
ディレクトリは、フレームワークによって生成されたファイルとキャッシュを保存するために使用されます。最後に、logs
ディレクトリにはアプリケーションのログ ファイルが含まれています。
storage/app/public
一般にアクセスできるようにする必要があるユーザー アバターなど、ユーザーが作成したファイルを保存するために使用できます。このディレクトリを指す public/storage
ソフト リンクを作成する必要があります。このリンクは、phpArtisan storage:link
コマンドを使用して直接作成できます。
Tests ディレクトリ
tests
このディレクトリには自動テスト ファイルが含まれています。参照用に、PHPUnit に既製の例が用意されています。各テスト クラスには、接尾辞 Test
を付ける必要があります。 phpunit
または php Vendor/bin/phpunit
コマンドを使用してテストを実行できます。
ベンダー ディレクトリ
vendor
このディレクトリには、すべての Composer 依存関係パッケージが含まれています。
App ディレクトリ
ほとんどのアプリケーションは app
ディレクトリにあります。デフォルトでは、このディレクトリはネームスペース App
であり、PSR-4 自動ロード標準を使用して Composer によって自動的にロードされます。
app
ディレクトリには、Console
、Http
、Providers
などの追加のさまざまなディレクトリが含まれています。 Console
ディレクトリと Http
ディレクトリは、アプリケーションのコアに API を提供すると考えてください。 HTTP プロトコルと CLI はどちらもアプリケーションと対話するためのメカニズムですが、実際にはアプリケーション ロジックは含まれません。言い換えれば、これらはアプリケーションにコマンドを発行する 2 つの方法です。 Console
ディレクトリにはすべての Artisan コマンドが含まれ、Http
ディレクトリにはコントローラー、ミドルウェア、リクエストが含まれます。
make Artisan コマンドを使用してクラスを生成すると、
app ディレクトリの下に他のさまざまなディレクトリが生成されます。したがって、たとえば、
app/Jobs ディレクトリは、
make:job Artisan コマンドを実行してジョブ クラス
{tip を生成するまで存在しません。多くのクラスは、Artisan コマンドを通じてブロードキャスト ディレクトリapp
ディレクトリに生成されます。使用可能なコマンドを確認するには、ターミナルで
phpArtisanListmakeコマンドを実行します。
Broadcasting ディレクトリには、アプリケーションのすべてのブロードキャスト チャネルが含まれます親切。これらのクラスは、
make:channel コマンドを使用して生成されます。このディレクトリはデフォルトでは存在しませんが、最初のチャネルを作成するときに作成されます。チャネルの詳細については、イベント ブロードキャストに関するドキュメントを確認してください。
Console ディレクトリには、アプリケーションのすべてのカスタム アーティザン コマンドが含まれています。これらのコマンドは、
make:command コマンドを使用して生成できます。このディレクトリにはコンソール カーネルも格納されており、ここでカスタム Artisan コマンドを登録し、スケジュールされたタスクを定義できます。
このディレクトリはデフォルトでは存在しませんが、
event :generate# を渡すことができます。 ## およびmake:event 作成するアーティザン コマンド。
Events ディレクトリ配置イベント クラス。イベントを使用すると、特定のアクションが発生したことをアプリケーションの他の部分に警告することができ、優れた柔軟性と分離が実現します。
このディレクトリにはアプリケーションの例外処理が含まれており、A ディレクトリでもあります。アプリケーションによってスローされた例外を置くのに適した場所です。例外のログ記録と表示方法をカスタマイズする場合は、このディレクトリ内の
Handler クラスを変更する必要があります。