我在文档中发现以下代码片段可能对您有所帮助:
// map users details page using controller#action string
$router->map( 'GET', '/users/[i:id]/', 'UserController#showDetails' );
如果那没有帮助,您可以查看我的路由器Sail。我构建它是为了让程序员以更加面向对象的方式来构建他们的 API。
编辑
这是一个如何使用 Sail 解决此问题的示例。
use Sail\Sail;
use Sail\Tree;
use Sail\Exceptions\NoSuchRouteException;
use Sail\Exceptions\NoMiddlewareException;
use Sail\Exceptions\NoCallableException;
require '../vendor/autoload.php';
$sail = new Sail();
class UserController extends Tree {
public function build () {
$this->get('transfer', function($request, $response) {
self::transfer($request, $response);
});
$this->get('register', function($request, $response) {
self::register($request, $response);
});
}
public static function transfer(&$request, &$response) {
//do your stuff
}
public static function register(&$request, &$response) {
//do your stuff
}
}
$sail->tree('customer', new UserController());
try {
$sail->run();
} catch (NoSuchRouteException $e) {
echo $e->getMessage();
} catch (NoMiddlewareException $e) {
echo $e->getMessage();
} catch (NoCallableException $e) {
echo $e->getMessage();
}