# 基础路由 URL 路由器可隐藏网站物理文件结构提高安全性,美化 URL 地址便于 SEO。 您将在 system/routes.php 中定义应用中的大多数路由。 大多数基本的路由都只接受一个 URI 和 一个 闭包(Closure) 参数。 [TOC] ## GET 路由 / 表示访问网站主页 ``` Route::get('/',function(){ return '后盾网 欢迎您'; }); ``` 设置路由路径 ``` Route::get('show', function(){ return 'Hello HDPHP'; }); ``` ## POST 路由 触发POST提交的场景很多,比如form标签设置methos='post' 或 jquery ajax提交设置type='POST',都有可能触发POST路由。 我们来能过实例讲解一下,比如HTML 模板代码如下: ``` <form action="user/add" method="post"> <input type="text" name="user"> <input type="submit"> </form> ``` 路由规则定义如下: ``` Route::post('user/add', function(){ p($_POST); }); ``` 当我们提交form表单时,因为数据提交方式为POST,并且提交地址与路由匹配,所以就会执行路由回调函数。 ## PUT路由 当提交方式设置为PUT,比如jquery中我们可以设置type为PUT,如果是普通form表单提交,我们也可以在表单中添加隐藏域。 html表单定义如下: ``` <form action="user/add" method="post"> <input type="text" name="user"> <input type="hidden" name="_method" value="PUT"> <input type="submit"> </form> ``` 路由定义如下: ``` Route::put('user/add', function(){ p($_POST); }); ``` PUT 提交的数据,我们还是使用$_POST获取 ## DELETE 路由 DELETET 定义的路由与使用PUT定义是一样的,下面是表单的设置: ``` <form action="user/del" method="post"> <input type="text" name="user"> <input type="hidden" name="_method" value="DELETE"> <input type="submit"> </form> ``` 路由定义如下 ``` Route::DELETE('user/del',function(){ p($_POST); }); ``` ## ANY路由 any 路由类型会识别所有有提交模式,而不是像GET模式,只能匹配GET提交 ``` Route::any('user',function(){ return '你好 后盾网'; }); ``` ## 获取匹配成功的路由 用于获取本次请求匹配成功的路由规则。 ``` Router::getMatchRoute(); ``` ## 方法欺骗 HTML 表单没有支持 PUT 或 DELETE 请求。所以当定义 PUT 以及 DELETE 路由并在 HTML 表单中被调用的时候,您将需要添加隐藏 _method 字段在表单中。 发送的 _method 字段对应的值会被当做 HTTP 请求方法。举例来说: ``` <form action="user/api" method="POST"> <input type="hidden" name="_method" value="PUT"> </form> ```