这篇文章主要介绍了laravel5.1框架基础之路由,结合实例形式分析了Laravel框架中路由的概念、原理、基本路由操作与相关注意事项,需要的朋友可以参考下
本文实例讲述了laravel5.1框架基础之路由。分享给大家供大家参考,具体如下:
我在学习Laravel5.1,虽然刚刚开始,认识很浅,但还是需要做做归纳,清晰认识
建议大家到laravel学院学习laravel
1、路由(app/routes.php)
- 在routes.php中进行路由设置,;
- 作为访问的统一入口,是控制器的统一调度;
- 没有配置路由,就没有正确地访问路径;
- 路由需要自己规定一定的规则,方便自己查看、使用、理解;
2、路由基本类型及使用示例
- get
Route::get('articles','ArticleController@index');
或
Route::get('db',function(){
$name = DB::connection()->getDatabaseName();
echo $name;
});
- post
Route::post('article/update','ArticleController@update');
- match
匹配[]
中的请求方式
Route::match(['get','post'],'/hello',function(){
return "match";
});
- any
匹配所有请求方式
Route::any('/hello',function(){
return "any";
});
3、从路由获取参数
- 必用参数
Route::get('/blog/{name}',function($name){
return $name; // 返回name显示
});
即除了 /blog/{name}的路由类型,都不能进来
- 可选参数
Route::get('/blog/{name?}',function($name = 'name'){
return $name; // 返回name显示,如果没设置就取默认值
});
即设置了默认值,路由中加了 ? 未输入参数则使用默认值
- 正则参数
正则可以更灵活些,匹配更多需求。
Route::get('/blog/{id?}',function($id="1"){
return "{$id}";//输出blog的ID,
})->where('name','^\d+$');//正则匹配为只能是数字,不然将无法找到路由;
- 参数全局约束
在app/Providers/RouteServiceProvider的boot(Router $router)
方法作如下修改:
public function boot(Router $router)
{
$router->pattern('id','^\d+$');
parent::boot($router);//将id全局限制为数字
}
boot()
方法在每个服务提供者(Providers)类中都有用到,将再Providers启动方法执行后执行
可以通过boot()方法对Providers实现依赖注入
4、路由还可以做
给路由起个别名或者分个组
防CSRF攻击
Restful风格路由
详细内容
X、 app/routes.php 注释翻译(拙劣练习)
自从开始接触laravel和github发现,越来越难以逃避自己拙劣的英语,我该开始不再畏惧,好好面对,所以开始将laravel源码中出现的英文注释逐步进行翻译,待自己的对框架熟悉时候,再添加自己的中文注释,来强化自己的认识。
/*
|--------------------------------------------------------------------------
| Application Routes
|--------------------------------------------------------------------------
|
| Here is where you can register all of the routes for an application.
| It's a breeze. Simply tell Laravel the URIs it should respond to
| and give it the controller to call when that URI is requested.
|
*/
/*
|--------------------------------------------------------------------------
| 应用路由
|--------------------------------------------------------------------------
|
| 你可以很轻松地在这里注册所有的路由。
| 简单地告诉laravel,当特定地址被请求的时候,访问对应的控制器,使地址得到响应。
|
*/
更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。
本文标题为:laravel5.1框架基础之路由详解
基础教程推荐
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- 使用PHP开发留言板功能 2023-03-13
- PHP中的错误及其处理机制 2023-06-04
- PHP命名空间简单用法示例 2022-12-01
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- php array分组,PHP中array数组的分组排序 2022-08-01