mombol/router

基于 Macaw 的 PHP 路由器

1.0.4 2016-04-22 11:11 UTC

This package is not auto-updated.

Last update: 2024-09-26 00:31:58 UTC


README

Router 是一个简单、开源的基于 macaw 的 PHP 路由器。它非常小巧(~150 行代码),运行速度快,并提供了一些优秀的注释源代码。这个类允许你直接将其扔入你的项目中并立即开始使用。

安装

如果你有 Composer,只需在项目的 composer.json 文件中将 Router 包含为项目依赖项。如果没有,可以通过下载 .ZIP 文件并解压缩到你的项目目录中来安装它。

require: {
    "mombol/router": "^1.0"
}

示例

首先,使用 Router 命名空间

use \Mombol\Router\Router;

Router 不是一个对象,所以你可以直接对该类进行操作。以下是一个简单的 Hello World 示例

Router::get('/', function() {
  return 'Hello world!';
});

Router 还支持 lambda URI,例如

Router::get('/(:any)', function($slug) {
  return 'The slug is: ' . $slug;
});

你还可以在 Router 中请求 HTTP 方法,因此你也可以这样做

Router::get('/', function() {
  return 'I <3 GET commands!';
});

Router::post('/', function() {
  return  'I <3 POST commands!';
});

最后,如果没有为某个位置定义路由,你可以让 Router 执行一个自定义的回调,比如

Router::error(function() {
  return '404 :: Not Found';
});

如果你没有指定错误回调,Router 将会简单地输出 404

调用 Router 函数后执行此操作

Router::dispatch(function($content){
  if (!empty($content) && is_string($content)) {
    echo $content;
  }
});

其他

参见 https://github.com/noahbuscher/Macaw