2017-01-29 8 views
1

altorouter Q & Aを見ると、altorouterを使用しているときに、名前付きコントローラとメソッドを呼び出す方法について、この例であるhereが見つかりました。ルータの名前のないコントローラとメソッドを呼び出す

$router->map('GET','/content/[:parent]/?[:child]?', 'content_controller#display_item', 'content'); 

$router(method, route, target, name(optional)); 

は、私は方法、ルートをマップするが、ターゲットをマッピングするために取得する方法を理解していないどのように取得する構文/無名のコントローラまたはメソッドを呼び出します?。

答えて

0

私はこれを試してみました、それが動作するようですが、これは我々がそれに

$router->map('GET', '/[a:controller]/[a:action]?', function ($controller, $action = null) { 
    if ($action=='') {$action = 'index';} 
    if (method_exists($controller, $action)) { 
     $controller::$action(); 
    } else { 
     echo 'missing'; 
    } 
}); 

を想定している方法であれば、私はまだ確認が必要になります。ここルータが/[a:controller]/[a:action]?で、ターゲットが機能

function ($controller, $action = null) { 
    if ($action=='') {$action = 'index';} 
    if (method_exists($controller, $action)) { 
     $controller::$action(); 
    } else { 
     echo 'missing'; 
     } 
    }); 
です

名前のないコントローラを取得し、メソッド/アクションをチェックします。メソッド/アクションがnullの場合、変数$ actionにindexが代入されてマップされます。

未定義のコントローラとmehtodを呼び出すのが正しいかどうか確認してください

関連する問題