当前位置: 软件>php软件
PHP 路由器 Pux
本文导语: Pux 是一个超级高性能的 PHP 路由器,是对 PHP Router 的重新设计。测试速度比 symfony 快 48.5 倍,比正则表达式方式路由快 31 倍。 路由匹配示例: /post /post/:id => matches /post/33 /post/:id(/:title) ...
Pux 是一个超级高性能的 PHP 路由器,是对 PHP Router 的重新设计。测试速度比 symfony 快 48.5 倍,比正则表达式方式路由快 31 倍。
路由匹配示例:
/post /post/:id => matches /post/33 /post/:id(/:title) => matches /post/33, /post/33/post%20title /post/:id(.:format) => matches /post/33, /post/33.json .. /post/33.xml
示例代码:
require 'vendor/autoload.php'; // use PCRE patterns you need PuxPatternCompiler class.
use PuxExecutor;
class ProductController {
public function listAction() {
return 'product list';
}
public function itemAction($id) {
return "product $id";
}
}
$mux = new PuxMux;
$mux->add('/product', ['ProductController','listAction']);
$mux->add('/product/:id', ['ProductController','itemAction'] , [
'require' => [ 'id' => 'd+', ],
'default' => [ 'id' => '1', ]
]);
$route = $mux->dispatch('/product/1');
Executor::execute($route);