赵雷/路由器

为您的项目提供路由器包

1.1.3 2023-06-19 20:21 UTC

This package is auto-updated.

Last update: 2024-09-19 23:33:01 UTC


README

Router PHP包为PHP Web应用提供了一个易于使用的路由系统。它允许开发者定义不同HTTP方法(如GET、POST、DELETE和PUT)的路线。此外,它支持使用隐藏的输入字段来模拟DELETE、PUT和PATCH HTTP方法。

要求

Router PHP包需要PHP 7.0或更高版本。

特性

  • 定义GET、POST、DELETE和PUT HTTP方法的路线
  • 定义带参数的路线

安装

要使用Router PHP包,您需要通过Composer安装它。在您的项目目录中运行以下命令

composer require pierre/router

用法

要使用Router,您需要创建一个新的Router类实例

// Require composer autoloader
require __DIR__ . '/vendor/autoload.php';

// Create Router instance
$router = new \Pierre\Router\Router();

// Define routes
// ...

// Run it!

定义路线

Router支持四种HTTP方法:GET、POST、DELETE和PUT。您可以使用以下方法为每种方法定义一个路线

GET

要定义一个GET路线,请使用get()方法。第一个参数是URL路径,第二个参数是当路线被访问时将执行的回调函数

$router->get('/', function() {
    return 'Hello World!';
});

POST

要定义一个POST路线,请使用post()方法。

$router->post('/', function() {
    return $_POST['name'];
});

DELETE

要定义一个DELETE路线,请使用delete()方法。

$router->delete('/user/:id', function($id) {
    return 'User ' . $id . ' deleted';
});

PUT

要定义一个PUT路线,请使用put()方法。

$router->put('/user/:id', function($id) {
    return 'User ' . $id . ' updated';
});

执行Router

定义完您的路线后,您需要使用run()方法执行Router

$router->run();

模拟DELETE、PUT和PATCH方法

要在表单中模拟DELETE、PUT和PATCH HTTP方法,需要在隐藏的输入字段中包含一个名为_method的字段和所需方法的值。Router将检测此输入字段并使用指定的方法进行请求。

DELETE示例

<form action="/user/delete/1" method="POST">
    <input type="hidden" name="_method" value="DELETE">
    <input type="hidden" name="id" value="1">
    <input type="submit" value="Delete">
</form>

PUT示例

<form action="/user/edit/1" method="POST">
    <input type="hidden" name="_method" value="PUT">
    <input type="hidden" name="id" value="1">
    <input type="submit" value="Delete">
</form>

传递参数

您可以使用以下语法将参数传递到您的路线中

$name = "Pierre";
$router->get('/hello', function() use ($name) {
    return "Hello {$name}!}";
});

许可证

Router PHP包是开源软件,使用MIT许可证许可