gortonsd/router 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

gortonsd/router

Composer 安装命令:

composer require gortonsd/router

包简介

A lightweight PHP router library with automatic controller discovery, route registration via docblock annotations, and intelligent route caching

README 文档

README

PHP Router Library

Overview

Router is a lightweight PHP router class that automatically discovers controllers, registers routes using docblock annotations, and caches routes for fast lookup. Designed for easy integration into your own projects or for use by other developers.

Features

  • Automatic controller discovery in a specified folder
  • Route registration via @url docblock annotation
  • Supports HTTP methods: get, post (extendable)
  • File-based route caching with configurable minimum cache age
  • Simple API for dispatching requests

Controller Requirements

  • Each controller must have a docblock with @url /path
  • Implement methods named get(), post(), etc. for HTTP actions

Example:

/**
 * @url /example
 */
class ExampleController {
	public function get() {
		echo "GET: Hello from ExampleController!";
	}
	public function post() {
		echo "POST: You posted to ExampleController!";
	}
}

Usage

require_once 'vendor/autoload.php';

use gortonsd\Router\Router;

$router = new Router();
$router->loadControllers(3600); // Optional: set minimum cache age to 1 hour (3600 seconds)
$router->run($_SERVER['REQUEST_METHOD'], $_SERVER['REQUEST_URI']);

Route Caching

  • Routes are cached to a file (routes.cache) for fast lookup.
  • Cache is rebuilt if any controller changes and the cache file is older than the minimum age.
  • You can adjust the minimum cache age by passing a value (in seconds) to loadControllers().

Installation

Via Composer (Recommended)

composer require gortonsd/router

Manual Installation

Copy the src/Router.php file and your controllers into your project. Use Composer's autoload or require the files manually.

License

MIT

统计信息

  • 总下载量: 1
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-08-20