2 E9 b2 e* O3 C- n) G9 Y3 l6 k( H `& ^
【课程简介】
- C5 ]! q; b- Q6 ~, hLaravel是PHP工程化开发的趋势,本课程使用大量Laravel基础及高级组件,结合Mysql异步消息队列、ElasticSearch搜索引擎、Debugbar调试利器、Laravel性能优化等技术开发前后台完整的社交网站“简书”# \' w; D" V4 S
" e4 }( d& _/ y/ s, c% Y【课程目录】& c$ j0 Z Q6 I1 }
第1章 课程介绍
) P B8 z$ d6 s介绍课程的大体脉络和课程安排2 ~- ]3 y C3 I4 N
1-1 课程概要介绍
: I* H" m" W3 F4 @1 `. p; V" v
1 Y) H; _% \$ I7 v第2章 Laravel 5.4介绍
: S; W/ M3 y) {本节课会带领大家介绍laravel的各个版本历史以及讨论php框架的未来发展趋势。把laravel周边的生态环境一一展示。
3 }& P0 W/ }) |2-1 Laravel 5.4介绍2 f0 b# t# J! W
2-2 Laravel 1.0~5.4 版本演进/ S: r6 y1 _; @+ K: ^/ k
2-3 Laravel的社区生态8 n" ?1 B& [5 W* g) R. q T
2-4 与其他框架比Laravel的优势(上)
4 e* C9 P& m& `- z: E0 |2-5 与其他框架比Laravel的优势(下)
* X/ K# D; ]4 W, ?: p
, @4 I3 z9 S5 ~; c0 z第3章 安装启动Laravel项目( i( L/ _2 ^' [" P
本章介绍laravel是如何安装的,我们将使用composer工具对laravel进行安装。使用composer的时候,我们会修改下composer的镜像。不仅如此,我们还会在安装完成之后,带领大家一一介绍下laravel的目录结构和配置文件。让大家对laravel有个全局的了解。...1 u# \6 d2 B, j/ R* e* V
3-1 Laravel的安装环境9 l6 Z! \2 G: N3 j
3-2 PHPstorm + squelPro开发工具介绍
8 z8 E; `, j! R3-3 使用Composer安装Laravel 试看# H$ w! ^2 p) v
3-4 启动Laravel6 n! _9 [8 @+ m
3-5 Laravel 目录结构介绍
- N1 {- d& L- B, D& x1 a/ W6 F x3-6 修改.env数据库配置文件7 k% r \ h' C* M+ u4 a/ v
. F! I" L1 \2 m& r# f5 h8 i& X第4章 文章模块# ~0 G- J, C6 z2 l
本章介绍最核心的文章模块。这是我们这个项目最核心的一个模块。这个模块中会第一次用到路由,模版,数据迁移,数据填充,控制器,数据模型,tinker调试器等。在这个模块中,用到路由和模版搭建页面,并且使用数据迁移来搭建文章表,在做到分页逻辑的时候,我们使用数据填充往数据库中填充多条数据,并且基于ORM模型搭建mod...* i! \7 ?8 E/ w' a7 ~
4-1 项目相关模块介绍& V4 H2 N: L6 d
4-2 文章模块章节说明+ |8 e* |' ?8 M, \
4-3 Laravel路由的几种形式
) W# H" u' S( k/ X4 _' C4-4 文章模块路由的实现
! Q: w" i2 e" E- `: G' C- d2 y4-5 blade模板渲染文章页面
$ u, N8 Z1 m S- U4 ?% z' _) l4-6 Laravel的blade模版
; d8 {9 b1 R7 j% O4-7 balde语法优化文章模版页面
! a. r3 x" G0 m% c2 h8 A4-8 使用migration创建posts数据表
* @/ k* r3 H+ v+ _: ]4-9 ORM创建文章模块模型
7 l& E: y# T+ H- W' n* p: E: L4-10 文章列表页的实现
! p- Y- x G+ A. E) P4-11 文章详情页的逻辑实现. H6 x0 } v1 S7 q4 n6 |& {
4-12 csrf+富文本编辑器创建文章(上)
5 A1 M1 c- |2 @8 S* [- E/ v4-13 csrf+富文本编辑器创建文章(下)8 |( E) K5 X! _ J9 q2 R
4-14 文章编辑的逻辑实现+ E: n0 v4 b/ f4 F3 o K$ A3 ?& p
4-15 使用模型完成删除文章操作
8 u. ]9 f* w5 [0 H# }2 n2 D. K4-16 章节重点总结2 W* S+ V. |; h. K6 ]& G
+ O/ v' n. m- C: \( B& Y7 _8 g
第5章 Laravel核心思想
% a' F& d7 Z' ^) _) D本章会介绍laravel的几大核心思想,容器、服务提供者、门脸。这些思想和概念是laravel中最难理解的,结合上一章我们的文章模块,我们对这些概念能有更深的理解。理解完概念之后,我们教大家技巧,如何查找laravel中的类包含有哪些方法。...
( P: d- g+ ~ q. \5-1 Larave核心思想之服务容器9 T( ?- |/ c% t
5-2 Laravel的核心思想之服务提供者- d: \3 f* u7 o) `1 c+ T1 e
5-3 Laravel的核心思想之门脸模式( Q, \# A+ ?3 Z8 T. |
5-4 示例-分析Laravel核心日志类' x1 a5 f2 L& F* e& O+ s
5-5 技巧-如何查找门脸及注入类方法
; V* s; U, {2 b# C* n7 ?& X7 l, ~2 d' D- d" P9 K7 h2 @+ v! z
第6章 用户注册登录注册模块1 Y8 _! a: f/ o- z
本章将介绍laravel中的用户认证模块Auth的具体使用。我们使用Auth模块能很方便完成用户的登录,注册等功能。并且完成了用户认证之后,我们需要对用户权限进行管理,同样,我们是使用laravel的Auth组件来完成用户权限管理。对用户对文章和资源的增删改查的权限进行统一管理。...7 S% k, R" n7 |& N S+ R
6-1 用户模块章节介绍; Q% W; o- u+ G$ K( l% g
6-2 使用路由和模版搭建登录注册页面
* k- d4 [: Y4 K& ^6-3 用户注册逻辑的实现(上)
! Z& q- ^0 \1 l/ I- |9 N6-4 用户注册逻辑的实现(下)! A8 D: B2 D6 t
6-5 Auth门脸类的讲解及配置流程
|9 U' a1 b$ ^9 f/ H4 M" k/ l6-6 使用Auth实现用户登录逻辑: @$ y+ C5 G) o, a& ] A* K
6-7 策略类-policy用户授权
. t4 D6 ^$ b$ [2 x! Q N s0 |8 Y6-8 使用Policy实现文章权限控制
( m9 R ?# O8 ^: r, W G6-9 文章路由控制的实现
) ]. Y1 R. u; l) Q6-10 个人设置页面上传头像功能实现7 P' ]3 k; {2 F9 u$ J1 W9 F
, P% n! \3 j$ L6 c6 [+ ^
第7章 评论模块0 v" j0 J+ q- O: O3 y5 s
本章讨论评论系统,主要完成对文章的评论的展示和添加。在本章中,我们建立文章和评论模型之间的关联,使用这种关联来进行文章评论的关联展示。我们还需要建立评论和用户模型的关联。本章中我们第一次使用到了模型关联,也会带大家系统整理一下有哪些模型关联,如何使用。...# h+ n, c+ g2 K) ^3 ]) Z( R
7-1 评论模块章节介绍 s9 T7 g6 c+ o1 B
7-2 migration创建评论表
5 s( d9 z( U: Y' y- f- @6 D7-3 介绍Laravel模型关联
, V% V0 Q8 _3 M, T: g, m7-4 创建评论模型
7 j5 X- V3 u8 r6 h1 u8 \! x0 S" h7-5 使用路由和模版搭建评论页面
4 ?7 u% y$ @! O3 ~7-6 添加评论业务逻辑的实现, p% p* c8 C8 f9 e: W! u9 O: z; j
7-7 使用模型和模型关联实现评论列表页1 T" K- S% X3 g- g7 ?
7-8 使用withCount实现评论数2 @5 `5 J" E0 j" y" u N) P
$ W. i; k* K) H" {$ R1 M第8章 赞模块
0 |3 g; j2 }3 i对一篇文章进行赞和取消赞是我们经常实现的一个功能。我们同样使用文章和文章表和赞表的关联模型来完成这个模块。在这个章节我们会看到ajax提交在laravel中的使用,以及如何在ajax中进行csrf保护。
4 E' L+ `' l/ s# U5 u8-1 赞模块介绍
2 h+ r" u- n% N8-2 migration创建数据表$ B0 E/ ^3 b4 |! z" ~, V G
8-3 使用模型实现赞页面的逻辑的实现
7 J, H: T" F0 _5 ]8-4 扩展withCount实现点赞数和评论数
4 e5 Y4 a/ I+ r3 C" J8 T0 [6 F9 @6 l7 i, a8 N7 L9 c' ]: P+ z3 P
第9章 搜索模块6 e6 a# |2 ]" p0 R
本章着重将Laravel与elasticsearch进行结合进行文章搜索。首先,我们需要搭建并使用elasticsearch及它的中文分词插件然后我们会使用laravel的command命令开发一个创建elasticsearch索引的命令,接着我们使用laravel5.4的Scot组件,保持文章和搜索引擎中的文章索引同步。并且对文章进行关键词搜索,并且让搜索结果拥有分页功...
1 U8 N* j- C2 u9-1 搜索模块介绍
& W8 o$ O, `3 ?5 F9-2 搜索模块的设计3 P7 Z0 y9 t$ M' U
9-3 介绍elasticsearch及相关插件
% ] r/ m+ a+ u: X) K) ^* o9-4 梳理实现搜索模块的具体步骤
7 {4 @) D8 l3 d5 H- ~: y9-5 elasticsearch的具体安装; @% ]/ F" |: c& D5 A
9-6 Laravel的scout包安装及Laravel-es包安装9 [2 y! J7 j5 D
9-7 使用laravel的Command实现搜索引擎索引和模版的建立
0 \, J* v" ~1 o& f+ a. O9-8 关联模型并使用scout命令导入数据& k/ X. s& w4 Q1 @" D
9-9 使用路由和模版搭建搜索结果页7 T' _( E5 K9 L# h& \/ l
9-10 使用scout实现搜索结果展示及分页
6 A$ b, u. _2 u' S0 N* ?- n$ ^1 _* _6 a' H8 C* R4 o/ i( A
第10章 个人中心模块 [1 U& H4 ^! u$ H' M( ?
本章内容将完成个人中心页面以及好友关注的功能。我们在这个模块中依赖创建的关系表完成多对多的模型关联,并且使用laravel的模型,对这些关联进行维护。
% ~& ]+ ^5 ]* L" w' s: E" T10-1 个人中心模块介绍1 s2 [3 @ f6 h [, u$ L7 F
10-2 使用migration创建数据表和模型
; d3 O, S. C/ J0 i6 {7 u9 u10-3 实现多对多模型关联% C9 \3 ~) ?( O4 V; `% E3 o
10-4 使用路由和模版搭建个人中心页面8 Z2 l4 a6 B6 m L$ s/ l0 B
10-5 使用多对多模型实现个人中心逻辑(上)
: }$ S; q7 b2 f/ D% J9 M: Z10-6 使用多对多模型实现个人中心逻辑(下)" O4 H1 J3 ^6 ^; h8 A1 S; a
/ B6 J, i# b* ]第11章 专题模块
( l4 b6 d2 v+ n5 k) y3 Y本章开发专题模块,以及文章对专题的投稿。本章的难点在于如何获取一个人未投某个专题的文章列表。( C- q+ \/ m7 W$ c- |1 M
11-1 专题模块介绍
2 [+ {: B5 B' u' H: ~' _. E4 {2 k3 O11-2 使用migration创建数据表和模型2 J2 W& g& P% ]5 W
11-3 使用路由和模版搭建专题页面 试看
8 ]1 f( l& K" ~5 v& E) a8 \11-4 使用viewcomposer实现公共区域的专题列表3 h5 B: F0 o- ~2 Q$ M# y1 k, @
11-5 介绍laravel中的scope
4 J2 @4 X0 L3 j- I: j0 P11-6 使用scope实现某个用户未投稿的文章0 v/ f9 O% q3 j9 E1 [6 j2 g9 d
11-7 周边模型关联, a# z# J. h9 w% e# ], H2 p# C/ v
11-8 使用scope等完成专题详情页逻辑, h- ~0 V* x0 m9 O
11-9 使用模型操作完成专题的投稿操作
8 j' c+ o& Q0 }7 h
- \/ S$ v) T7 k4 W' C第12章 后台基础框架搭建
0 {3 u7 e. R L7 L: x: h7 L! I9 y本章着重使用基于bootstrap的Adminlte模版来搭建管理后台的基础框架,如何在laravel中使用这些网上现成的模版是本章的重点。前台和后台我们会放在一个项目中,如何在一个项目中包含前台和后台,MVC层和文件夹,配置文件,路由都需要如何设计,是这个章节需要解决的问题。...
$ c) Q. l( J* `6 S* x+ h12-1 管理后台章节介绍; c- F z" }& o5 P& f' L' m
12-2 设计使用一份代码中包含前后台
2 d8 D4 p" f& \* t3 j12-3 前后台的模版区分
/ k, {# q6 R) @$ F( A# k I12-4 adminlte模版皮肤介绍和嵌入
5 y* T& A) g3 [/ z: c0 I5 [3 R12-5 使用adminlte搭建管理后台登录页面+ \' u- @4 e+ Z# V0 ^" s; j! I
12-6 使用adminlte搭建管理后台首页
' X: z+ I, g2 S8 W# ~12-7 使用blade的layout抽取出管理后台页面公用部分! R) |9 R1 d( c( V* ^
12-8 后台表前缀和模型约定
* G8 F8 q ~" c1 u: o12-9 使用Auth和guard搭建管理后台用户管理
( e3 F4 ~9 B8 W2 \% k4 ~. D12-10 使用Auth实现管理后台登录页面
. i1 p8 T9 i5 U
( [0 T; t+ U/ f- o第13章 管理人员模块
7 ?% h* R8 S1 n) b本章使用已经搭建的后台模版,来完成管理人员的增加,删除,修改,查找的页面。这个也是我们使用后台模版完成的第一个后台模块,在后台的路由使用和通用逻辑上面,我们会给出一个范例。+ S0 f( W* t- ?; Z' e6 B
13-1 管理模块简介9 n9 z9 T' t% j3 o
13-2 管理人员的列表和增加页面
3 `5 T4 N% \* Y% {3 {' z9 S! \4 u13-3 -管理人员的列表和增加逻辑7 O1 r' i% v' @( w% }4 H3 T
( |4 `( `6 ]& K z1 [
第14章 审核模块
$ a3 E4 E5 m& }, Q本章完成后台审核人员对文章的审核功能,虽然是一个后台项目,但是也是一个前后台相关联的模块,我们完成的是先发后审的机制,在laravel中,如何完成对应的文章审核逻辑,前台如何过滤审核未通过的文章,都是这个章节需要讨论的内容。...
f. y: H$ i$ _14-1 文章审核模块介绍. k# o- r2 N% V$ w" X
14-2 文章审核的需求分析5 Q) T5 E* A' d' w. H9 j* x) Y
14-3 使用全局scope进行软删除模型
4 a9 R+ x5 }! [( R$ h ^14-4 完成文章审核模块页面, @/ G# w w3 D2 X d2 P
14-5 使用withoutGlobalScope来完成文章审核功能4 W" `* j% L9 z- o
! z, a+ T- g0 J/ ]第15章 权限模块
1 l7 V; r. [* _3 h4 w! R本章重点在于带领大家完成后台的权限模块,我们同样也是使用laravel的Auth组件,另外完成了一套权限系统,我们会带领大家看下如何在一个项目中拥有两个权限控制系统,并且在路由中控制两个系统。接着,后台的左边栏菜单是根据不同权限,展示不同菜单。这个也是通过权限系统加左边栏的菜单组件来共同完成的。...
9 R4 ~3 ?3 r% X15-1 权限管理模块基本介绍
6 T. z* P2 p" a4 D: ]% h1 K! V- M9 C15-2 分析用户角色权限模型
! u% q! C+ a, F15-3 创建表和模型
# ]) ~, R3 J" S8 a% ~6 h6 r15-4 使用hasMany搭建模型关系 试看* S- R0 u8 i4 X: g% p* B
15-5 搭建路由和页面模版
# | b. h8 e9 b* g; R& l/ H15-6 逻辑实现-用户篇4 { _2 O2 s2 {3 M6 l: [
15-7 逻辑实现-角色篇+权限篇, X( } x% d0 D4 M7 T7 N4 u
15-8 逻辑实现-测试和数据添加' `0 \2 N# @, b" l* _& E- A$ Z' g
15-9 使用laravel的Gate实现权限管理(上)
! M3 `: e$ D' y& ~$ T15-10 使用laravel的Gate实现权限管理(下)
a. w. i, Z8 ^: F' J3 l0 C5 X/ P7 c0 q
第16章 专题管理模块
0 F4 Q* K6 O9 ~本章重点在于带领大家完成后台的专题模块管理。如何对前台的专题模块进行增删改查操作。# h% u4 W0 `) T2 v- b& T) _1 n
16-1 专题管理模块介绍4 B& Y {* y8 U3 Z* K
16-2 专题管理模块需求分析
' k8 Q9 }3 y& l4 v8 C# r4 N) S16-3 Laravel的Resource介绍
) Y# n" O1 n+ L3 `' k1 N$ h16-4 使用Resource完成专题路由0 X" \: j) b, {) K- e e$ l
16-5 专题管理模块完成
' i" {! ]0 z- H
7 j( J9 M: W2 Y' P7 ~第17章 系统通知模块
6 w: ?8 C' \# D/ U: f9 D: m本章使用laravel的队列来完成系统通知的异步发送。系统通知是群发或者多发功能,我们需要使用一个异步机制,laravel中如何使用数据库来完成异步队列,并且在队列中进行任务。" E( M5 _) ^6 q6 m& n/ P
17-1 通知管理模块介绍
3 {6 d# k' P. y& U) S$ C17-2 具体需求设计和分析" `* M' t3 i0 t
17-3 -创建表和模型: f% {+ Y' K* | T
17-4 使用resource完成后台页面和逻辑$ W! H! v: i0 N1 a) J
17-5 完成前台页面和逻辑
+ s! i' X4 C" j2 N. s3 b( g17-6 Laravel中队列的介绍
9 H) d, J* m/ [; X+ X17-7 使用Laravel的队列实现系统通知
1 ?& r2 Y* N0 ~9 ~
- H. ?. N' X, ~8 l9 r' Z第18章 性能优化
; r5 w! ?& J$ I- C# f: ~& \3 u本章介绍laravel特定的一些性能优化方案。包括使用debugbar来查看页面效率,如何优化sql查询次数,如何使用路由缓存,配置缓存等来优化页面速度。3 k \8 s0 H/ ?0 L1 u
18-1 性能优化章节介绍
; L6 k( t! D9 @' t U$ x! C( E18-2 使用Laravel自带的优化命令优化 ]& G5 @0 c" i5 |* x |. Y
18-3 使用debugbar进行问题定位2 H2 \: ^: e, h2 k6 g5 e# V
18-4 使用预加载进行优化
+ } U# k( e$ r, O+ u Q18-5 使用DB_listen进行慢sql的查询7 h% ]; \& y2 X* [/ \: c [* o
, m4 ]% ^+ G! A4 h【下载地址】$ D0 J1 D+ _. \ ~
$ c, E7 `* I( {' l& V- p
J7 f6 X+ [( B: l7 I; ] |
|