From 921197a5c3364fff0c4c0c226eb6e16ab129dd3b Mon Sep 17 00:00:00 2001
From: pengshiyu <1940607002@qq.com>
Date: Thu, 30 Jun 2022 10:00:46 +0800
Subject: [PATCH] fix
---
blog/laravel/index.md | 15 ++-
blog/laravel/route.md | 212 +++++++++++++++++++++++++++++++++++++++++-
doc/php.md | 2 +-
3 files changed, 226 insertions(+), 3 deletions(-)
diff --git a/blog/laravel/index.md b/blog/laravel/index.md
index 2c45b8c..83f0c50 100644
--- a/blog/laravel/index.md
+++ b/blog/laravel/index.md
@@ -5,6 +5,19 @@
- 链接:https://pan.baidu.com/s/1Y_o3RdUEsrj6tHchMwY3Mg
- 提取码:f4qz
+配置 Makefile 文件
+
+```bash
+# 申明伪目标
+.PHONY: dev
+
+# make dev
+dev:
+ php8 artisan serve
+```
+
+## 目录
+
[安装Laravel编程环境](blog/laravel/install-php.md)
-[Route路由](blog/laravel/route.md)
\ No newline at end of file
+[Route路由](/blog/laravel/route.md)
diff --git a/blog/laravel/route.md b/blog/laravel/route.md
index ae9e590..05455d8 100644
--- a/blog/laravel/route.md
+++ b/blog/laravel/route.md
@@ -412,4 +412,214 @@ class TaskController extends Controller
Route::get('/task',[TaskController::class, 'index']);
```
-https://www.bilibili.com/video/BV1gE411j78F?p=6&spm_id_from=pageDriver
\ No newline at end of file
+## 响应和重定向
+
+1、响应
+```php
+// 返回文本字符串
+return 'index';
+return response('index');
+
+// 自定义http状态码
+return response('index', 201);
+
+// 修改响应头为纯文本
+return response('
index
')
+ ->header(
+ 'Content-Type',
+ 'text/pain; charset=UTF-8'
+ );
+
+//返回json
+return [1, 2, 3];
+return response([1, 2, 3]);
+return response()->json([1, 2, 3]);
+```
+
+2、路由重定向
+
+```php
+// 简写
+return redirect('/');
+
+// 完整形式
+return redirect()->to('/');
+
+// facade模式
+return Redirect::to('/');
+
+// 通过命名路由跳转
+return redirect()->route('index');
+
+// 回退到上一页
+return redirect()->back();
+return back();
+
+// 跳转到控制器方法
+return redirect()->action([TaskController::class, 'read']);
+
+// 跳转到外部链接
+return redirect()->away('https://www.baidu.com/');
+```
+
+
+## 资源控制器
+
+命令行生成资源路由
+
+```bash
+php8 artisan make:controller BlogController --resource
+```
+
+资源控制器会产生7个方法
+
+```php
+only(['index', 'create']);
+
+// 排除生成
+Route::resource('blogs', BlogController::class)
+ ->except(['index', 'create']);
+```
+
+API 路由
+
+```php
+Route::ApiResource('blogs', BlogController::class);
+```
+
+直接使用 api 资源路由
+```bash
+# 不包含 create 或 edit 方法
+php artisan make:controller CommentController --api
+```
+
+https://www.bilibili.com/video/BV1gE411j78F?p=8&spm_id_from=pageDriver&vd_source=efbb4dc944fa761b6e016ce2ca5933da
\ No newline at end of file
diff --git a/doc/php.md b/doc/php.md
index 6bfdcd1..60e8791 100644
--- a/doc/php.md
+++ b/doc/php.md
@@ -4,7 +4,7 @@
[笔记:PHP 零基础入门到精通教程(P2 mysql 数据库 5 天)](blog/php-mysql/index.md)
-[Laravel](blog/laravel/index.md)
+[Laravel](/blog/laravel/index.md)
## 文章
--
GitLab