企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
## Annotation格式路由写法 ### **开发环境推荐使用此方式去生成路由规则** 在控制器中的Action都可以增加一个 @Route 的路由规则,如果`Config::router('auto_build')` 为``true``,会自动生成对应的路由规则, 为了保证性能请在生产环境请将`Config::config('auto_build')`设置为`false` 。 ### REQUEST_TYPE 类型 | 描述 | REQUEST_TYPE | | --- | --- | | 匹配所有请求类型 | ALL | | 匹配GET请求类型 | GET | | 匹配POST请求类型| POST | | 匹配PUT请求类型| PUT | | 匹配DELETE请求类型| DELETE | | 匹配HEAD请求类型| HEAD | | 匹配OPTIONS请求类型| OPTIONS | @Route [REQUEST_TYPE = ALL] 静态规则(多个规则空格隔开) 例如 ``System/Home/IndexController`` ``` <?php namespace App\System; use GFPHP\Controller; class IndexController extends Controller{ /** * 访问 域名/index.html 将会指向此Action * @Route GET index.html * @return mixed|String */ public function indexAction() { return 'hello this is index.html'; } /** * GET 访问 list.html和list-(\d+).html 会指向此Action * @Route GET list.html list-(\d+).html * @param int $page * @return mixed|String */ public function listAction($page = 1) { return 'hello this is list-' . $page . '.html'; } /** * POST访问 add.html 将会指向此Action * @Route POST add.html * @return mixed|String */ public function addAction() { return 'hello this is add.html'; } /** * 默认匹配所有请求类型 * @Route all.html * @return mixed|String */ public function all_typeAction() { return 'hello this is all.html'; } } ``` 下为自动生成的对应 `Annotation.php` 路由规则 ~~~ <?php /** * Created by GFPHP. */ /** * 访问 域名/index.html 将会指向此Action * @Route GET index.html * @return mixed|String */ \GFPHP\Router::get('index.html', 'Home/Index@index'); /** * GET 访问 list-(\d+).html 会指向此Action * @Route GET list.html list-(\d+).html * @param int $page * @return mixed|String */ \GFPHP\Router::get('list.html', 'Home/Index@list'); \GFPHP\Router::get('list-(\d+).html', 'Home/Index@list'); /** * POST访问 add.html 将会指向此Action * @Route POST add.html * @return mixed|String */ \GFPHP\Router::post('add.html', 'Home/Index@add'); /** * 默认匹配所有请求类型 * @Route all.html * @return mixed|String */ \GFPHP\Router::post('add.html', 'Home/Index@all_type'); ~~~