alin11 / routerion
快速且强大的PHP路由器
v0.1.13
2018-11-26 19:51 UTC
Requires
- php: ^5.3.0|^7.0
This package is not auto-updated.
Last update: 2024-09-29 05:55:14 UTC
README
一个简单、快速且强大的PHP路由器
- 轻松定义路由
- 动态路由参数
- 支持各种HTTP方法
- 支持REST API
安装
- 您可以使用composer安装Routerion
$ composer require alin11/routerion
- 在根目录下创建一个
.htaccess
文件
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
RewriteRule ^(.*)$ index.php [NC,L]
- 创建
config.php
文件或将以下PHP常量
添加到您的配置文件中
<?php define('CONTROLLER_PATH', __DIR__ . '\Controllers'); define('CONTROLLER_NAMESPACE', '\Controllers');
用法
让我们定义我们的路由。要定义路由,如果在根目录下不存在,请创建一个index.php
文件,或者创建一个routes.php
文件并将其包含到index.php
文件中
<?php require 'config.php'; require __DIR__.'/vendor/autoload.php'; $route = new Routerion\Route(new Routerion\Exceptions\APIException); $route->get('/', 'HomeController@index'); $route->get('/users', 'Auth\UsersController@index'); $route->get('/users/{name}/{age?}', 'Auth\UsersController@single'); $route->post('/get-user-info/{id}', 'Auth\UsersController@getUserInfo'); $route->get('closure', function(){ echo 'This is closure'; }); $route->get('closure-with-parameters/{required}/{optional?}', function($required, $optional = null){ echo $required; echo $optional; }); $route->run();
控制器
控制器文件位于Controllers
目录中。如果您有不同的控制器目录或命名空间,请编辑config.php
中的常量。