ホームページ >PHPフレームワーク >ThinkPHP >thinkphp コントローラーでメソッドを呼び出す方法

thinkphp コントローラーでメソッドを呼び出す方法

PHPz
PHPzオリジナル
2023-04-11 10:33:121797ブラウズ

ThinkPHP は、MVC フレームワークに基づく PHP フレームワークで、非常に便利で高速な開発ツールを提供します。その中でもコントローラーはビジネスロジックの処理やデータのやり取りを担う非常に重要なコンポーネントです。この記事では、プログラムの拡張性と保守性を向上させるために、コントローラーでメソッドを呼び出す方法を紹介します。

1. コントローラーの作成

コントローラーを使用する前に、まずコントローラーを作成する必要があります。ユーザー情報の追加、削除、変更、クエリを処理する UserController を作成するとします。ThinkPHP では、次のコマンドを使用して UserController コントローラーを作成できます:

php think make:controller admin/UserController

このコマンドは、プロジェクト 「application/admin/controller」ディレクトリに UserController という名前のコントローラーを作成します。次に、コントローラーで関連する操作を実行できます。

2. コントローラー メソッドの呼び出し

1. 基本的な呼び出し

コントローラーでメソッドを定義した後、コントローラーでメソッドを直接呼び出すことができます。次のように:

namespace app\admin\controller;
use think\Controller;
class UserController extends Controller{
    public function index(){
        return 'user index';
    }

    public function add(){
        return 'user add';
    }

    public function edit($id){
        return 'user edit '.$id;
    }

    public function delete($id){
        return 'user delete '.$id;
    }
}

ルート「/admin/User/index」、「/admin/User/add」、「/admin/User/edit/1」、「/admin/User/delete/」にアクセスすることによって1 "UserController コントローラー内の対応するメソッドをそれぞれ呼び出すことができます。

2. 同じコントローラー内の他のメソッドにアクセスする

コントローラーでは、「$this->Method Name()」を通じて同じコントローラー内の他のメソッドを呼び出すことができます。次のように:

namespace app\admin\controller;
use think\Controller;
class UserController extends Controller{
    public function index(){
        return $this->add();
    }

    public function add(){
        return 'user add';
    }
}

UserController コントローラーの add() メソッドは、ルート「/admin/User/index」にアクセスすることで呼び出すことができます。

3. 他のコントローラーのメソッドにアクセスする

「controller('コントローラー名')」を通じて新しいコントローラーを作成し、コントローラー内のメソッドを使用できます。次のように:

namespace app\admin\controller;
use think\Controller;
class UserController extends Controller{
    public function index(){
        $test = controller('Test');
        return $test->index();
    }
}

上記のコードでは、Test という名前の新しいコントローラーを作成し、そのindex() メソッドを呼び出しました。

4. パラメータを使用したメソッド呼び出し

メソッドを呼び出すときにパラメータを渡したい場合は、メソッドの後に「/parameter 1/parameter 2/.../parameter n」を追加できます。名前。パラメータを渡します。次のように:

namespace app\admin\controller;
use think\Controller;
class UserController extends Controller{
    public function edit($id){
        return 'user edit '.$id;
    }

    public function test(){
        return $this->edit(111);
    }
}

ルート「/admin/User/test」にアクセスすると、UserController コントローラーの edit($id) メソッドを呼び出し、パラメーター 111 を渡すことができます。

5. 数字と横線をキャメルケースに変換するメソッドへのアクセス

ThinkPHP では、数字と横線をキャメルケースに変換するメソッドを自動的に呼び出すこともできます。次のように:

namespace app\admin\controller;
use think\Controller;
class UserController extends Controller{
    public function viewList(){
        return 'user view list';
    }

    public function userList(){
        return 'user list';
    }
}

ルート「/admin/User/view_list」および「/admin/User/user_list」にアクセスすると、UserController コントローラーの viewList() メソッドと userList() メソッドをそれぞれ呼び出すことができます。 。

3. 概要

ThinkPHP では、コントローラーは非常に重要なコンポーネントであり、Web アプリケーションの開発、保守、拡張において非常に重要な役割を果たします。この記事では、コントローラーを作成し、コントローラー内のメソッドを呼び出す方法を説明しました。これらの方法により、プログラムの拡張性や保守性を効果的に向上させることができ、プログラムの開発効率をさらに向上させることができます。

以上がthinkphp コントローラーでメソッドを呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。