dart_roman/router

简单的路由类

v1.0.5 2018-12-06 17:55 UTC

This package is auto-updated.

Last update: 2024-09-07 08:20:45 UTC


README

用于PHP Web应用程序的路由器类,允许构建应用程序的路由映射。

概述

该类支持通过4个简单方法构建与4个主要HTTP方法相关联的路由:get()post()put()delete()。每个方法接受最多3个参数

  • endpoint - 根据原则 Controller@action 构建的访问点
  • rule - 用于匹配路由访问点的规则,例如
    • calendar/edit
    • calendar/get-dates/{year}
  • match - 用于参数化路由元素(可选参数)的规则集,例如
    • ['year' => '\d{4}']

要启动路由器,只需两行代码 use DartRoman\Route; Route::start();

路由分组

所有路由都可以按文件逻辑分组。为此,所有文件都必须位于同一个文件夹中(默认为routes),并包含类。

扩展

可以通过从类继承来重写所有基本设置,具体如下

  • $prefix - 控制器命名空间的前缀
  • $separator - 前缀和类名称之间的分隔符
  • $routesDirectory - 路由文件夹的路径

使用示例

文件 routes/calendar.php

<?php
use DartRoman\Route;

Route::get('Calendar@show', 'calendar');
Route::get('Calendar@getDates', 'calendar/get-dates/{year}', ['year' => '\d{4}']);
Route::post('Calendar@edit', 'calendar/edit');

所有路由都与 Calendar 类交互。其中每个路由都对应以下方法

  • public function show()
  • public function getDates(int $year)(属性 $year 自动从 url 传递到方法)
  • public function edit()