无为清净楼资源网 Design By www.qnjia.com

本文实例讲述了Laravel5.1 框架路由基础。分享给大家供大家参考,具体如下:

什么是路由?

大K简单的说下,路由是用户访问我们程序的一个入口,比方说 你在浏览器输入:www.myblogs.com/create 就会打开一个页面,我们接收到这一个请求后后台需要做一些事儿来反馈给用户一些东西。

1 路由的实例

首先呢laravel的路由定义在这个路径下:app/Http/routes.php

/**
 * 这是Laravel提供给我们的主界面路由,输入 localhost:8000(如果你用的artisan控制台)就可以看到主界面啦
 */
Route::get('/', function () {
  return view('welcome');
});
/**
 * 我们自己定义了get路由
 * 浏览器输入 localhost:8000/get 就可以看到啦。
 */
Route::get('/get', function (){
  return '这是我们自己定义的get路由';
});
/**
 * 我们自己定义了post路由
 */
Route::get('/post', function (){
  return '这是我们自己定义的post路由';
});

备注:路由方法不只有 get和post 还有put啊 delete啊等,具体可以根据实际情况使用。

2 匹配多种路由

/**
 * 使用match可以匹配多种方法到一个路径下, localhost:8000/hello 支持GET方法也支持POST方法。
 */
Route::match(['get', 'post'], '/hello', function (){
  return 'hi~ 我是大K';
});
/**
 * any 顾名思义 它可以匹配所有的方法。
 */
Route::any('/any', function (){
  return 'any能匹配所有的方法';
});

3 路由参数

咱在写项目的时候啊 经常需要从路由中捕获参数以便之后的处理,那如何声明呢,继续看:

3.1 必选参数

/**
 * 参数的写法简单 加个花括号就行,然后在后面的闭包中捕获它就行。
 */
Route::get('/user/{id}', function ($id){
  return '咱成功的拿到了一个用户ID:' . $id;
});

3.2 可选参数

/**
 * 可选参数只要在参数名后面跟个问号就好,然后在闭包中给它个默认值就好。
 */
Route::get('/user/{id}/name/{name"htmlcode">
/**
 * 参数的写法简单 加个花括号就行,然后在后面的闭包中捕获它就行。
 * 后面跟了个where方法,里面限制了id参数必须是数字。
 */
Route::get('/user/{id}', function ($id){
  return '咱成功的拿到了一个用户ID(现在我只能接受数字):' . $id;
})->where('id','[0-9]+');
/**
 * 如果对多个参数进行约束,那咱就得在where方法中给数组啦。
 */
Route::get('/user/{id}/name/{name"htmlcode">
public function boot(Router $router)
{
  $router->pattern('id', '[0-9]+');
  parent::boot($router);
}

然后修改一下刚刚的例子:

Route::get('/user/{id}', function ($id){
  return '咱成功的拿到了一个用户ID(现在我只能接受数字):' . $id;
});
Route::get('/user/{id}/name/{name"htmlcode">
/**
 * 现在比如说 用户在更新他的名字 拿到名字后在数据库中更新 更新完了跳转到另一个路由
 */
Route::get('/user/{id}/name/{name}', function ($id, $name){
  // 更新数据库操作
  // ...
  // 跳转
  return redirect()->route('showUser',['name' => $name]);
})->where('name','[A-Za-z]+');
/**
 * 另一条路由 (路径瞎写的啊)
 * 在路径后面加一个数组 as=>router_name 就是这么个流程。
 */
Route::get('/admin/private/user/show/{name}', ['as' => 'showUser', function($name){
  return '哇 你的名字已经更新完啦:'.$name;
}]);

更多关于Laravel相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

标签:
Laravel5.1,路由

无为清净楼资源网 Design By www.qnjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
无为清净楼资源网 Design By www.qnjia.com

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。