2

この素晴らしいビデオチュートリアルに従って、ミニMVCPHPフレームワークを作成しました。

ご覧のとおり、この男はhome()、メインページを表示するためにControllerクラス内で呼び出されるアクションを作成します。

次に、別のページを表示するという別のアクションを作成する必要がありますfoobar()が、簡単な方法でURLに関連付けるにはどうすればよいですか?

4

1 に答える 1

3

これは通常、ルーティングによって行われます。URLの最初の部分がコントローラーを識別し、2番目の部分がアクションを識別する場合、それらの変数を抽出し、それに応じてルーティングします。

非常に基本的な例:

$action = 'foobar';
$controllerName = 'whatever';

if(class_exists($controllerName)){

    $controller = new $controllerName;

    if(method_exists($controller, $action)){

        $controller->$action();

    }
}

明らかに、$actionそして$controllerNameURLから取得されます。

このコードスニペットは、「whatever」という名前のクラス内でメソッド「foobar」を呼び出そうとします。

于 2012-07-18T11:41:23.283 に答える