最适合入门的laravel初级教程(三)路由Route

接着我们来认识认识上篇文章没有提到的 route/web.php;
先来了解下路由的概念;
在网络成为吃住一样的基本需求的今天;
断开了网络就像断开了与世界的联系的感觉;
对于现实中的路由我们应该是不陌生的;
最起码了解 wifi 吧;
你家里只有一根网线;
网线上接着 wifi 路由器;
多部手机和电脑就可以通过 wifi 上网了;
路由器起到了一个分发的作用;
路由
laravel 中的路由器和现实中的路由器大致是一样的;
laravel路由
我们访问项目的时候;
请求首先到达 index.php 入口文件;
可以把 index.php 类比成网线;
route/web.php 类比成路由器设备;
controller 控制器类比成多部手机设备;

有些框架的路由是自动绑定控制器的;
创建了控制器;路由也就自动有了;
laravel 的每一个路由是需要手动定义的;
很多童鞋会觉得这样很繁琐;
当年我也觉得麻烦;
还专门研究了自动绑定控制器的方法;
不过我并不会把方案写出来误导大家;
因为手动定义这种解耦的方式有它的好处;
以后重构项目路由的时候就简单方便多了;
定义一条路由也就秒秒钟的事;
不必纠结;

打开 web.php ;
我们可以看到这样的代码;

我们来解析下;
Route 是一个类;
访问类的静态方法是用 ::的形式;
那么get 就是Route类的一个静态方法;
get 静态方法可以传2个参数;
第一个参数现在是 /
我们知道 function 是用来定义函数的;
第二个参数就是一个闭包函数;
在这个闭包函数中 return 返回的东西就是我们请求到的内容;
这3行代码告诉我们3件事;

第一;
Route::后面可以跟一个请求方法;
当前代码中就是 get 请求;
get 和 post 在请求中是最基本最常用的方法;
很容易就 Lenovo 到;
如果写成 post 的话;
那就表示是接受一个 post 的请求;

第二:
/表示的是首页;
在 url 中就是域名后面的那个斜杠;
http://bjyblog.test/
只不过后面如果没有其他内容的话一般是被省略了;
于是我们就很容易的模仿一下;

Route::get('article', function () {
    return view('welcome');
});

这样的写的话;
那 url 就应该是 http://bjyblog.test/article

第三;
view 函数可以直接定位到 resources/views 目录;
它可以接受一个参数;
这个参数就是 resources/views 目录下的文件名去掉 blade.php后缀;
我们可以创建一个 resources/views/article.blade.php 文件;
里面写上 bjyblog article;
这样我们就可以定义请求了;

Route::get('article', function () {
    return view('article');
});

我们访问 http://bjyblog.test/article
看到这样的内容就表示成功了;

如果访问 http://bjyblog.test/article 报错;
那试下 http://bjyblog.test/index.php/article 试下;
加了 index.php 就正常了的话;
说明是没有成功开启 rewrite ;
回到 phpstudy配置虚拟主机及开启扩展
或者网上搜下 rewrite 相关教程;

到这;
我们已经把路由和视图V关联起来了;
我们也创建了一个非常简单的路由了;
更复杂的路由我们先不写;
用到的时候我们再详细讲;

这个系列的文章只有一二三这样的文章标题区分;
目的就是弱化主题;
由渐入深;从使用的角度来学习;
不然这篇文章的主题如果定义为路由的话;
就回到了官方文档的结构;
步子跨的太大容易扯着egg;
讲的太多就容易迷茫;

白俊遥博客
请先登录后发表评论
  • 最新评论
  • 总共13条评论
白俊遥博客

_ATIU*:讲的挺好的,仔细,大神辛苦

2018-09-08 14:16:21 回复

白俊遥博客
  • 苏妞尔 回复 _ATIU*:还可以吧
  • 2018-09-10 11:05:33 回复
白俊遥博客

半梦半醒半浮生:博主 有没有redis 和memcache 的文章啊

2018-07-19 16:48:35 回复

白俊遥博客
  • 云淡风晴 回复 半梦半醒半浮生:暂时没有;
  • 2018-07-22 23:09:27 回复
白俊遥博客

furhacker:博主, 请问什么时候更新进阶篇啊, 盼了好久了白俊遥博客

2018-06-25 17:24:09 回复

白俊遥博客
  • 云淡风晴 回复 furhacker:设计模式系列写完;然后看再写什么;
  • 2018-07-22 23:10:00 回复
白俊遥博客

:来了 来了  来了     html语言了解一下。

2018-06-21 11:47:27 回复

白俊遥博客

搬运工002:还款记录

2018-03-13 12:04:15 回复

白俊遥博客

点杠:浅显易懂,支持博主

2018-03-06 16:22:01 回复

白俊遥博客

followfish:这波路由器真是形象生动...不仅让我又想摸一模你的腿毛了...

2018-02-13 16:38:50 回复

白俊遥博客

沐子:alert("还在学php吗,快转java吧");

2017-12-29 17:16:26 回复

白俊遥博客
  • 云淡风晴 回复 沐子:把这个异教徒拖出去斩了;
  • 2018-03-04 22:41:58 回复
白俊遥博客

天之痕白俊遥博客支持支持

2017-12-29 10:58:05 回复

白俊遥博客

幽谷清风:期待更新

2017-12-27 11:02:50 回复

白俊遥博客

Only Strive:666 来支持

2017-12-25 15:09:54 回复

白俊遥博客
  • ﹎ゞ很√想迩 回复 Only Strive:fasdfasdf 
  • 2017-12-25 20:10:04 回复
白俊遥博客
  • ﹎ゞ很√想迩 回复 Only Strive:comment-
  • 2017-12-25 20:15:36 回复
白俊遥博客

微笑^_^:期待更新!一直关注学习

2017-12-25 11:26:31 回复

白俊遥博客

off:哥们写的不错哈,期待更新!

2017-12-25 07:41:02 回复