Lumen は、PHP フレームワークをベースとしたマイクロサービス フレームワークであり、Laravel と互換性のある API を提供します。 Lumen は、ルーティング制御、セッション管理、認証などの多くの組み込み機能を提供します。これらの関数は、開発者が効率的な API や Web サービスを迅速に構築するのに役立ちます。この記事ではPHPのLumen関数の使い方を紹介します。
1. Lumen のインストール
Lumen の機能を使用する前に、まず Lumen をインストールする必要があります。 Lumen の最新バージョンは、Lumen 公式 Web サイトからダウンロードできます。さらに、PHP 環境と Composer パッケージ マネージャーがインストールされていることを確認する必要もあります。
インストールが完了したら、新しい Lumen プロジェクトを作成する必要があります:
1 | composer create-project --prefer-dist laravel/lumen blog
|
ログイン後にコピー
これにより、「blog」という名前の新しいプロジェクトが作成されます。
2. ルーティング制御
ルーティング定義は、HTTP リクエストとコントローラー メソッド間のマッピングを制御します。 Lumen でのルートの定義は非常に簡単です。まず、app/Http/routes.php
ファイルを開きます:
1 2 3 4 5 | <?php
$router ->get( '/' , function () use ( $router ) {
return $router ->app->version();
});
|
ログイン後にコピー
この例では、$router->get## を渡します。 #この関数は、リクエスト「/」を匿名関数にマップする GET メソッドのルートを定義します。この匿名関数は、Lumen アプリケーションのバージョン情報を返します。 Lumen でこのルーティングを実行するには、次のようなコマンドを使用できます:
3. リクエストとレスポンス
サーバー側のコードでは、リクエストとレスポンスは非常に重要な概念です。 Lumen は、リクエストとレスポンスを処理するための多くの組み込み関数を提供します。基本的な操作の例をいくつか示します。
HTTP リクエスト情報の取得
$request グローバル変数を使用して、現在の HTTP リクエストの情報を取得できます。たとえば、リクエストの HTTP メソッドを取得するには:
1 2 3 4 5 | use IlluminateHttpRequest;
...
function (Request $request ) {
$method = $request ->method();
}
|
ログイン後にコピー
HTTP レスポンスをクライアントに送信します
response() を使用できます。 Lumen が提供する送信機能 クライアントは HTTP レスポンスを送信します。たとえば、200 OK ステータスの応答を送信します:
1 2 3 4 5 | use IlluminateHttpResponse;
...
function () {
return response( "Hello World" , 200);
}
|
ログイン後にコピー
IV. セッション管理
セッション管理は Web アプリケーションの非常に一般的な機能であり、アプリケーションが複数の HTTP リクエストにまたがることを可能にします。ユーザー関連のデータを保存および取得します。 Lumen は、「セッション」と呼ばれるクロスリクエスト データ ストレージ ソリューションを提供します。
セッション管理を使用するには、最初にセッション コンポーネントをインストールする必要があります:
1 | composer require illuminate/session
|
ログイン後にコピー
その後、セッション サービス プロバイダーを
bootstrap/app.php ファイルに登録します。
1 | $app ->register(IlluminateSessionSessionServiceProvider:: class );
|
ログイン後にコピー
セッションの使用は非常に簡単です。
session() を呼び出すだけです。 グローバル ヘルパー関数:
1 2 3 4 5 6 | use IlluminateHttpRequest;
...
function (Request $request ) {
$request ->session()->put( 'key' , 'value' );
return $request ->session()->get( 'key' , 'default' );
}
|
ログイン後にコピー
この例では、「key」という値を保存します。同じセッションからこの値を取得するときに返されます。キーが見つからない場合は、デフォルト値が返されます。
5. 認証
認証は、Web アプリケーションにおけるもう 1 つの一般的な問題です。 Lumen は、開発者が認証関連ロジックを管理および実装するのに役立つ多くの組み込み関数を提供します。基本的な認証コードの例をいくつか示します。
認証ガードを設定する
guard() 関数を使用して認証ガードを設定できます。たとえば、「web」という名前のガードを設定します。
1 2 3 | use IlluminateSupportFacadesAuth;
...
Auth::guard( 'web' );
|
ログイン後にコピー
ユーザーが認証されているかどうかを確認します
check() を使用できます。ユーザーが認証されているかどうかを確認する関数 認証に合格しました。例:
1 2 3 4 5 6 7 | use IlluminateSupportFacadesAuth;
...
if (Auth::check()) {
} else {
}
|
ログイン後にコピー
認証試行
関数
attempt() を使用して、ユーザーの認証を試行できます。例:
1 2 3 4 5 6 7 | use IlluminateSupportFacadesAuth;
...
if (Auth::attempt([ 'email' => $email , 'password' => $password ])) {
} else {
}
|
ログイン後にコピー
上の例では、認証に電子メール フィールドとパスワード フィールドのユーザー資格情報を使用しました。検証が成功すると、
true が返されます。
6. ベスト プラクティス
Lumen を使用する過程で、よくある間違いや問題を回避するのに役立つベスト プラクティスがいくつかあります。いくつかのベスト プラクティスを次に示します。
コードはシンプルで理解しやすいものにしてください。 - PHP のセキュリティ上の注意点を理解し、セキュリティ対策を講じてください。
- 応答時間やスループットなど、API のパフォーマンスを測定するためのメトリクスを導入します。
- クライアント アプリケーションが API の動作を理解できるように、適切な HTTP 応答コードを使用します。
- ドキュメントを管理し、ドキュメントが実際のコードと一致していることを確認します。
- 結論
-
Lumen は、開発者が効率的な API や Web サービスを迅速に構築できるように、多くの便利な組み込み関数を提供します。 Lumen の機能を使用するには、まず Lumen と関連コンポーネントをインストールし、基本的な制御とリクエスト、レスポンス、およびセッション管理と認証を理解する必要があります。ベスト プラクティスに従うことで、Lumen アプリケーションのセキュリティ、信頼性、パフォーマンスが保証されます。
以上がPHP で Lumen 関数を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。