## 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');
~~~
- 項目安裝
- 開發前必讀
- 配置項目
- 基礎配置
- 數據庫配置
- 路由基礎配置
- 調試的基礎配置
- 文件上傳配置
- 命令行配置
- 緩存配置
- 視圖配置
- 視圖默認變量
- 配置的讀取和使用
- 鉤子的配置
- 路由
- 默認的路由
- 以配置文件設置路由規則
- 以Annotation形式設置路由
- URL生成
- 控制器
- 創建一個控制器
- 視圖渲染
- 數據庫
- 簡述
- 創建一個數據庫模型
- 鏈式操作
- 數據查詢
- 更新數據
- 插入數據
- 刪除數據
- 事務操作
- 高級功能
- 字段驗證
- 增加一個驗證規則
- 自帶的驗證規則
- 驗證規則的使用
- 自動判斷規則
- 數據分表
- 數據分表準備
- 視圖
- 視圖實例
- 自定義模板標簽
- 輸出變量
- 判斷語法
- 遍歷循環
- 使用函數
- 原樣輸出
- 模板引用
- 模板繼承
- 引入資源
- 原生PHP標簽
- 自定義模板引擎規則
- 鉤子
- 行為
- 過濾器
- 監聽
- 緩存
- 緩存的配置
- 設置緩存
- 讀取緩存
- 刪除緩存
- 命令行
- 命令行的使用
- 自定義命令行Handler