perritu/router

简单而强大的PHP路由器

v1.0.6-rc1 2024-01-08 18:31 UTC

This package is auto-updated.

Last update: 2024-09-08 19:46:25 UTC


README

这是一个轻量级、简单但功能强大的PHP路由库。

Packagist Version Packagist PHP Version Packagist License Codacy grade

FOSSA Status

功能

  • 支持DELETEGETHEADOPTIONSPATCHPOSTPUT请求动词。
  • 路由快捷方式。
    • Router::DELETE()Router::GET()Router::HEAD()等。
  • 基于PCRE的静态和动态路由。
  • 自定义Path和/或HTTP-Method调用覆盖。
  • 使用Path\to\public@method回调。
  • 数组到API响应。
  • 子路由/路由前缀。
  • 子命名空间/命名空间前缀。

要求

Perritu/Router可以无包装运行得很好(甚至没有Composer)。

当然,最佳实现方式是通过composer,但也可以不使用它来实现。

您只需要PHP 8.1或更高版本以及任何URL重写技术。

安装。

有两种安装方式。

  • 使用composer。(推荐)
    • composer require perritu/router
  • 直接下载。
    • 下载并将Router.php文件放置在您的公开访问目录外,因此任何调用都必须通过您的代码流程执行。
    • 从您的代码流程中进行require_once导入。
    require_once(PROJECT_ROOT .'/include/perritu/router.php');

使用方法

导入后,执行一个use语句以开始使用路由器,然后开始您的路由定义。

简单示例

// Require statement
require_once('../vendor/autoload.php'); // Or router.php if not using composer.

use Perritu\Router\Router as R;

R::MATCH(R::ANY, '.*', function(){
  if(R::IsApi())
  return ['Hello world!'];

  echo '<h1>Hello world!</h1>';
}, R::E_PREG);

您可以在DOCS中阅读文档。

外部链接。

Codacy: https://app.codacy.com/gh/Perritu/Router/dashboard

Packagist: https://packagist.org.cn/packages/perritu/router

FOSSA: https://app.fossa.com/projects/git%2Bgithub.com%2FPerritu%2FRouter?ref=badge_large