Laravel は人気のある PHP フレームワークですが、多くの初心者にとって、フレームワークのソース コードを読むのは非常に困難です。この記事では、読者がこのフレームワークをよりよく理解できるように、Laravel のコード構造と重要な部分を説明します。
Laravel のコード構造
Laravel のコード構造は非常に明確で、フレームワーク全体が複数の独立したモジュールに分解されており、各モジュールには固有の責任と機能があります。この構造により、Laravel の保守と開発が容易になります。 Laravel のメイン ディレクトリとファイルの説明は次のとおりです。
Laravel のキーコードの一部
Laravel のコード構造では、app
フォルダー内のコードに焦点を当てます。
コントローラー
コントローラーはLaravelの主要部分であり、アプリケーションでHTTPリクエストに応答するために使用されます。 app/Http/Controllers
フォルダーにすべてのコントローラー クラスが表示されます。以下はサンプル コントローラーです:
<?php namespace AppHttpControllers; use IlluminateHttpRequest; use AppUser; use AppHttpControllersController; class UserController extends Controller { /** * 显示指定用户的个人资料 * * @param int $id * @return Response */ public function show($id) { return view('user.profile', ['user' => User::findOrFail($id)]); } }
コントローラーでは、さまざまな状況を解決するためのさまざまなメソッドを定義できます。たとえば、$id
パラメーターを show() に渡すことができます。
メソッドを処理すると、このメソッドはビューとユーザーの ID を返します。
Model
Model は Laravel でデータベースを扱うメソッドで、データベーステーブルに関連付けられた PHP クラスです。 app
フォルダー内の app/Models
フォルダーには、次の例のユーザー モデルのようなさまざまなモデルが保存されます。
<?php namespace AppModels; use IlluminateDatabaseEloquentModel; class User extends Model { /** * 模型的默认属性值。 * * @var array */ protected $attributes = [ 'can_send_email' => false, ]; }
モデルでは、さまざまな属性を定義できます。およびデータベース テーブルに対する操作を実装するメソッドです。たとえば、$attributes
属性はモデルのデフォルトの属性値を設定できます。ユーザー モデルは次のように取得できます:
$user = AppModelsUser::find($id);
View
ビューは、ユーザーが読み取れる方法でデータと情報を表示するために使用される方法です。すべてのビュー ファイルは、resources/views
フォルダーにあります。通常、ビューには HTML、CSS、JavaScript コードが含まれます。
以下は簡単な Blade テンプレートの例です:
<!doctype html> <html> <head> <title>Laravel</title> </head> <body> <div class="container"> @yield('content') </div> </body> </html>
このテンプレート例では、ページ コンテンツをネストするタイトルとコンテナを定義し、@yield(' content')
を使用してコンテンツを挿入します。
Routing
ルーティングは、URL とアプリケーション内のコードを照合するために使用されます。Laravel の対応するルーティング ファイルは、routes/web.php
にあります。ルートの例を次に示します。
<?php use IlluminateSupportFacadesRoute; use AppHttpControllersUserController; Route::get('/user/{id}', [UserController::class, 'show']);
このルートの例では、ユーザー リクエストの URL パターンを作成し、すべてのリクエストは UserController::show()
メソッドで処理されます。
概要
Laravel のコード構造とコア部分は、主に app
フォルダーに集中しています。コントローラー、モデル、ビュー、ルートは、Laravel の 4 つの非常に重要な部分です。これらの部分がコード内でどのように実装されているかを理解すれば、Laravel の動作をより深く理解できるようになります。もちろん、Laravel 開発者はこれらの部分に新しい機能を常に追加しているため、Laravel を学習するプロセスも進行中です。
以上がlaravelはフレームワークのソースコードを理解できませんの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。