Klein是另一款針對PHP5.3+版本的輕量級路由庫。雖然它有一些比Dispatch冗長的語法,但它相當(dāng)快。這有一個(gè)例子:
respond('/[:name]', function ($request) {
echo 'Hello ' . $request->name;
});
你也可以定制來指定HTTP方法和使用正則表達(dá)式作為路徑。
respond('GET', '/posts', $callback);
respond('POST', '/posts/create', $callback);
respond('PUT', '/posts/[i:id]', $callback);
respond('DELETE', '/posts/[i:id]', $callback);
//匹配多種請求方法:
respond(array('POST','GET'), $route, $callback);
//你或許也想在相同的地方處理請求
respond('/posts/[create|edit:action] /[i:id] ', function ($request, $response) {
switch ($request->action) {
// do something
}
});
對于小型項(xiàng)目來說這是很棒的,但當(dāng)你把一個(gè)像這樣的庫用于大型應(yīng)用時(shí),你不得不遵守規(guī)矩,因?yàn)槟愕拇a可能很快就變得不可維護(hù)。所以你最好搭配一個(gè)像Laravel或者CodeIgniter這樣完全成熟的框架。