thinkPHP は、MVC (Model-View-Controller) アーキテクチャに基づく PHP フレームワークで、Web アプリケーションの開発に使用できます。 thinkPHP では、モジュールの概念が広く使用されています。一部の複雑なアプリケーションでは、異なるモジュール間をジャンプする必要があります。この記事では、thinkPHP5.0 を使用してモジュール間ジャンプを実行する方法を紹介します。
- 概要
クロスモジュール ジャンプとは、あるモジュールのコントローラーから別のモジュールのコントローラーにジャンプすることを指します。 thinkPHP では、各モジュールに獨立したコントローラーとビューがあります。ジャンプする前に、まずルーティング ルールを定義する必要があります。
- ルーティング ルールの定義
thinkPHP5.0 では、ルーティング ファイル (route.php) でルーティング ルールを定義できます。ルーティング ルールでは、モジュール間のジャンプを含む、URL リクエストに対する応答を定義できます。
ルーティング ルールを定義する形式は次のとおりです。
Route::rule('路由規(guī)則','模塊/控制器/方法','請求類型');
このうち、ルーティング ルールは文字列型、モジュール/コントローラ/メソッドは URL リクエストに対する応答、そしてrequest type は HTTP メソッドです。例:
Route::rule('index','index/Index/index','get');
このルールは、リクエストされた URL が http://www.example.com/index の場合、応答するコントローラーは Index コントローラーの下の Index メソッドであることを意味します。リクエストタイプはgetです。
クロスモジュール ジャンプを行う場合、ルーティング ルールでアンダースコア「_」を使用してモジュール名を表すことができます。例:
Route::rule('jump','admin_模塊/控制器/方法','get');
このルールは、要求された URL が http://www.example.com/jump である場合、応答するコントローラーは admin モジュールの下のコントローラーのメソッドであり、要求タイプは次であることを示します。得る 。
ルーティング ルールを定義した後、モジュール間を移動できます。
- モジュール間ジャンプ
thinkPHP5.0 では、システムが提供する URL アシスタント機能を使用してモジュール間をジャンプできます。 URL ヘルパー関數(shù)は、定義されたルーティング ルールに基づいて、対応する URL アドレスを生成できます。
Url ヘルパー関數(shù)を使用する形式は次のとおりです。
url('路由規(guī)則',參數(shù)數(shù)組);
このうち、ルーティング ルールは定義されたルーティング ルール、パラメーター配列はターゲット コントローラーに渡されるパラメーターの配列です。 。
たとえば、メイン モジュールの Index コントローラーで、admin モジュールの下の User コントローラーの add メソッドにジャンプする必要がある場合は、次のように記述できます。
public?function?jump(){ ????//?跳轉到admin模塊下的User控制器的add方法 ????$url?=?url('admin_User/add'); ????return?$this->redirect($url); }
ジャンプするときは、パラメータを渡す必要がある場合は、URL ヘルパー関數(shù)の 2 番目のパラメータに追加できます。たとえば、Index コントローラーでは、admin モジュールの下の User コントローラーの edit メソッドにジャンプし、パラメーター id=1 を渡す必要があります。次のように記述できます:
public?function?jump(){ ????//?跳轉到admin模塊下的User控制器的edit方法,并傳遞參數(shù)id=1 ????$url?=?url('admin_User/edit',['id'=>1]); ????return?$this->redirect($url); }
ターゲット コントローラーでは、 input( ) 関數(shù)を使用してパラメータ値を取得できます。たとえば、User コントローラーの edit メソッドで、id パラメーターの値を取得するコードは次のとおりです。
public?function?edit(){ ????//?獲取id參數(shù)值 ????$id?=?input('id'); ????//?賦值到視圖中 ????$this->assign('id',$id); ????//?渲染視圖 ????return?$this->fetch(); }
- 要約
この記事では、その使用方法を紹介します。クロスモジュールジャンプには thinkPHP5.0 を使用します。ジャンプする前に、まずルーティング ルールを定義し、次に Url ヘルパー関數(shù)を使用してジャンプ用の URL アドレスを生成する必要があります。ターゲット コントローラーでは、input() 関數(shù)を使用して、ジャンプ時に渡されるパラメーター値を取得できます。
以上がthinkphp5.0 でモジュール間をジャンプする方法の詳細內(nèi)容です。詳細については、PHP 中國語 Web サイトの他の関連記事を參照してください。

ホットAIツール

Undress AI Tool
脫衣畫像を無料で

Undresser.AI Undress
リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover
寫真から衣服を削除するオンライン AI ツール。

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中國語版
中國語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)