1. Go to this page and download the library: Download hyperf-plus/route library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
hyperf-plus / route example snippets
use HPlus\Route\Annotation\ApiController;
use HPlus\Route\Annotation\GetApi;
use HPlus\Route\Annotation\PostApi;
use HPlus\Route\Annotation\PutApi;
use HPlus\Route\Annotation\DeleteApi;
#[ApiController] // 自动生成 /api/users (复数化)
class UserController
{
#[GetApi]
public function index() {} // GET /api/users
#[GetApi]
public function show($id) {} // GET /api/users/{id}
#[PostApi]
public function create() {} // POST /api/users
#[PutApi]
public function update($id) {} // PUT /api/users/{id}
#[DeleteApi]
public function delete($id) {} // DELETE /api/users/{id}
}
#[ApiController]
class UserController
{
#[GetApi]
public function state($id) {} // GET /api/users/{id}/state
#[PostApi]
public function enable($id) {} // POST /api/users/{id}/enable
#[PostApi]
public function disable($id) {} // POST /api/users/{id}/disable
#[GetApi]
public function permissions($id) {} // GET /api/users/{id}/permissions
}
#[ApiController]
class UserController
{
#[GetApi]
public function customAction(int $id) {}
// 自动生成: GET /api/users/{id}/custom-action
#[GetApi]
public function posts(int $userId, int $postId) {}
// 自动生成: GET /api/users/{userId}/posts/{postId}
#[GetApi]
public function getByEmail(string $email) {}
// 自动生成: GET /api/users/get-by-email/{email}
}
#[ApiController(prefix: '/v1/members')] // 自定义前缀
class UserController
{
#[GetApi(path: '/all')] // 自定义路径
public function index() {} // GET /v1/members/all
#[GetApi] // 混合使用
public function show($id) {} // GET /v1/members/{id}
}
use HPlus\Route\Annotation\Query;
use HPlus\Route\Annotation\Path;
use HPlus\Route\Annotation\Body;
use HPlus\Route\Annotation\Header;
#[GetApi]
public function search(
#[Query('keyword')] string $keyword, // 查询参数
#[Path('id')] int $id, // 路径参数
#[Header('X-Token')] string $token, // 请求头参数
#[Body] array $data // 请求体
) {}
namespace App\Controller\Api\V2;
#[ApiController] // 自动生成 /api/v2/users
class UserController
{
#[GetApi]
public function index() {} // GET /api/v2/users
}
#[ApiController(prefix: '/admin')]
class AdminController
{
#[GetApi]
public function dashboard() {} // GET /admin/dashboard
}
#[ApiController(prefix: '/admin/users')]
class AdminUserController
{
#[GetApi]
public function index() {} // GET /admin/users
}