ホームページ >PHPフレームワーク >ThinkPHP >ThinkPHP6 にはどのような種類のルーティングがありますか?使い方?
ThinkPHP6 のルーティングの種類は何ですか?使い方?
ThinkPHP6 は、複数のタイプのルーティングをサポートする非常に強力で柔軟なルーティング機能を提供する PHP ベースのオープンソース フレームワークです。この記事では、ThinkPHP6 で使用できるさまざまな種類のルーティングとその使用法について説明します。
これは、ThinkPHP6 の最も基本的なルーティング タイプであり、URL パターンとパラメーターの一致に基づいてルートの一致を実行します。このルーティング タイプでは、URL 内の各パラメーターはコントローラー クラスのメソッド名またはパラメーターを表します。例:
Route::rule('/index/:id', 'index/index/index');
上記のコードでは、ルーティング ルールは最初に URL パターンを定義し、コロンを使用してパラメータ id を指定します。このパラメーターは、コントローラー クラス Index のメソッド インデックスと一致し、id という名前のパラメーターを提供します。
RESTful ルーティングは、RESTful API で使用できる HTTP 動詞ベースのルーティングです。このタイプのルーティングを使用すると、同じ URL で複数の HTTP リクエスト タイプ (GET、POST、PUT、DELETE など) を処理できます。例:
Route::rule('/user/:id', 'user', 'GET|DELETE|PUT');
このルーティング ルールでは、route() 関数を使用して user という名前のルートを定義し、許可される HTTP 動詞 (GET、DELETE、および PUT) を指定します。
ThinkPHP6 のルート グループ化機能を使用すると、関連するルートを整理して管理できます。たとえば、アプリケーションのルートをより適切に編成するために、一連のルート内で共通のプレフィックスを定義できます。例:
Route::group('/admin', function () { Route::rule('/index/:id', 'admin/index/index'); Route::rule(':controller/:action', 'admin/:controller/:action'); });
上記のコードでは、最初にルーティング グループ/管理者を定義し、その中に 2 つのルーティング ルールを定義します。最初のルールは /admin/index/:id ルートに一致し、2 番目のルールは /admin/:controller/:action ルートに一致します。 2 番目のルールでは、コントローラー名とアクション名がプレースホルダー :controller および :action で表されていることに注意してください。
動的ルーティングを使用すると、ルーティング ルールで正規表現を使用できます。これにより、より複雑なルーティング ルールを指定して、マッチングをより詳細に制御できるようになります。例:
Route::rule(':year/:month/:day', 'news/date', ['method' => 'get'], ['year' => 'd{4}', 'month' => 'd{2}', 'day' => 'd{2}']);
このルーティング ルールでは、year、:month、:day の 3 つのプレースホルダーを定義し、正規表現を使用して各パラメーターの形式を制限します。
ルート キャッシュは、アプリケーションのパフォーマンスの向上に役立つ非常に便利な機能です。ルート キャッシュでは、解決されたルート ルールをキャッシュできるため、アプリケーションのルート解決を高速化できます。ルート キャッシュを有効にするには、アプリケーション構成ファイル config で次のオプションを設定します。
// 开启路由缓存 'route_cache' => true,
この設定では、解決されたルート ルールのキャッシュを許可するために、オプション Route_cache を true に設定します。
概要
この記事では、ThinkPHP6 で利用できるさまざまな種類のルーティングとその使用法について説明しました。ルーティングは Web アプリケーションの中核コンポーネントの 1 つであるため、さまざまな種類のルーティングに習熟することが、効率的で柔軟なアプリケーションを開発するための鍵となります。
以上がThinkPHP6 にはどのような種類のルーティングがありますか?使い方?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。