一.路由的定义
1. 什么是路由?路由就是提供接受 HTTP 请求的路径,并和程序交互的功能;
2. 简单点理解,就是为了提供访问程序的 URL 地址,所做的一些设置工作;
3. phpstorm 支持 cmd 操作,左下角 Terminal 按钮展开,调整字体即可;
4. 输入 php artisan serve 命令后,即支持 localhost:8000 内置服务器;
5. 路由的定义文件在根目录 routes/web.php 中,可以看到 welcome 页面;
6. 我们创建一个路由,让它返回一段信息,并设置响应的 url地址;
Route ::get( 'index ', function () {
return 'Hello, World ! ';
});
http://localhost:8000/index
7. 在路由定义上,我们采用了::get()这个方法,它接受的就是 GET 提交;
8. ::post()、 ::put()、 ::delete()是表单和 Ajax 的提交接受方式;
9. ::any()表示不管你是哪种提交方式,我智能的全部接收响应;
10. ::match()表示接收你指定的提交方式,用数组作为参数传递;
Route ::match([ 'get ', 'post '], 'index ', function () {
return 'Hello, World ! ';
});
11. 在路由的规则和闭包区域,我们可以设置和传递路由参数;
Route ::get( 'index/{id} ', function ($id) {
return 'Hello, World ! '.$id;
});
http://localhost:8000/index/5
12. 上面例子中{id}表示在 url 的动态参数,比如数字 5;
13. 那么闭包的$id,可以接受 url 传递过来的 5,最终输出 5;
二.创建控制器
1. MVC 模式中C 代表控制器,用于接收 HTTP 请求,从而进行逻辑处理;
2. 有两种方式可以创建控制器,IDE 直接创建,或使用命令生成一个; php artisan make:controller TaskController
3. 控制器目录在 app\Http\Controllers 下,使用 IED 会自动生成命名空间;
namespace App\Http\Controllers;
class TaskController extends Controller
{
public function index()
{
return 'index ';
}
public function read($id)
{
return 'id: ' .$id;
}
}
4. 通过设置路由来访问创建好的控制器,参数二:控制器@方法名;
Route ::get( 'task ', 'TaskController@index ');
Route ::get( 'task/read/{id} ', 'TaskController@read ');