, L- W. `) f; r( ]! P, k; O& d* {! g) i! Q3 x
【课程简介】
2 ~. w+ U5 M/ f' {Laravel是PHP工程化开发的趋势,本课程使用大量Laravel基础及高级组件,结合Mysql异步消息队列、ElasticSearch搜索引擎、Debugbar调试利器、Laravel性能优化等技术开发前后台完整的社交网站“简书”
; x( A4 O5 f1 q3 H2 j. Z' ~- n) D, _3 r3 R/ u$ s
【课程目录】$ D7 N4 T8 J& P( c
第1章 课程介绍
/ H" h- g% c+ @介绍课程的大体脉络和课程安排. o6 l; E, a1 r
1-1 课程概要介绍
! v. K5 w- |; N! k H- h8 F
, v( \+ Z- z4 k* U8 y& w3 R- t第2章 Laravel 5.4介绍* j6 n3 W. C: H
本节课会带领大家介绍laravel的各个版本历史以及讨论php框架的未来发展趋势。把laravel周边的生态环境一一展示。$ D1 W. s4 F/ ^ w
2-1 Laravel 5.4介绍
' R- G- E. u0 O: a2-2 Laravel 1.0~5.4 版本演进
4 v- R+ y+ ]9 q2-3 Laravel的社区生态" ^6 V& i, m6 [6 S% g/ n
2-4 与其他框架比Laravel的优势(上)
7 ]* X+ R! I; r7 l7 \3 [$ i6 b2-5 与其他框架比Laravel的优势(下): R7 K0 a+ y) [! E3 J0 s( {
" ? ^' k$ l p% b. E第3章 安装启动Laravel项目
* Y; s7 a8 a2 B' I6 \1 q本章介绍laravel是如何安装的,我们将使用composer工具对laravel进行安装。使用composer的时候,我们会修改下composer的镜像。不仅如此,我们还会在安装完成之后,带领大家一一介绍下laravel的目录结构和配置文件。让大家对laravel有个全局的了解。...
8 g8 S# J1 z+ ?7 }- E: g3-1 Laravel的安装环境
. }( @8 n7 R9 J4 H2 w3-2 PHPstorm + squelPro开发工具介绍* P w2 u6 j. R
3-3 使用Composer安装Laravel 试看
- S+ R& ~2 P/ c$ e. w3-4 启动Laravel
8 O" M' h# \) T' d! U9 C" N1 X5 A3-5 Laravel 目录结构介绍1 v% E5 V4 k( }4 Y
3-6 修改.env数据库配置文件
4 W$ i; O5 g3 @4 A5 R2 R# ?- k% J( h* I3 D
第4章 文章模块. E. N& s$ ~! d) N3 i; `
本章介绍最核心的文章模块。这是我们这个项目最核心的一个模块。这个模块中会第一次用到路由,模版,数据迁移,数据填充,控制器,数据模型,tinker调试器等。在这个模块中,用到路由和模版搭建页面,并且使用数据迁移来搭建文章表,在做到分页逻辑的时候,我们使用数据填充往数据库中填充多条数据,并且基于ORM模型搭建mod...0 [8 L" a$ Y$ ^8 Q& O: ^3 I
4-1 项目相关模块介绍6 y% H+ ^4 b" k, W. Z9 v) c
4-2 文章模块章节说明3 u& T1 }) i2 ^4 t- k a
4-3 Laravel路由的几种形式- D1 u- L: v6 [7 W3 |
4-4 文章模块路由的实现
& D* Y" Z4 \1 g k4-5 blade模板渲染文章页面( i" u. p {: i5 h- k
4-6 Laravel的blade模版1 m; e& m+ @& l' Z- c
4-7 balde语法优化文章模版页面8 {% ?$ x$ n8 K8 u3 M, t% _- p: @# x* i* P
4-8 使用migration创建posts数据表! V3 h* S" d* d& l; V3 H* ^
4-9 ORM创建文章模块模型
7 R$ ?. f. G/ i! x0 D4-10 文章列表页的实现
7 l0 U5 f# |. p# A4-11 文章详情页的逻辑实现4 J5 S( s3 m7 f" e+ X/ ?( C) T
4-12 csrf+富文本编辑器创建文章(上)# t6 f( b3 d K- t2 g8 e- Q
4-13 csrf+富文本编辑器创建文章(下)
7 p! N& U* R, u: e4-14 文章编辑的逻辑实现7 L1 o# o: `% z* O9 h, o
4-15 使用模型完成删除文章操作3 f) q* f+ I% ?) i3 g! k W
4-16 章节重点总结
9 c0 [1 J1 M3 Q) }$ p/ ?4 F$ T$ `! W# z" J: D0 \+ Z
第5章 Laravel核心思想
" y) {, L+ A! Q# R本章会介绍laravel的几大核心思想,容器、服务提供者、门脸。这些思想和概念是laravel中最难理解的,结合上一章我们的文章模块,我们对这些概念能有更深的理解。理解完概念之后,我们教大家技巧,如何查找laravel中的类包含有哪些方法。...
0 n3 R I' p. c7 V, N1 V) ~6 D8 S# l5-1 Larave核心思想之服务容器
+ q' g4 Z; t% \: t A& R5 k( U5-2 Laravel的核心思想之服务提供者* j) t3 t3 W1 T
5-3 Laravel的核心思想之门脸模式! I# K( o, z1 ^2 \6 U3 x+ z1 j' r" o
5-4 示例-分析Laravel核心日志类( O# h- n9 S; B
5-5 技巧-如何查找门脸及注入类方法
/ p9 J2 @; K: h3 l& L, ~/ k0 J5 X" Y. X9 [* z# {8 M! V
第6章 用户注册登录注册模块1 X% P, U2 N" x- _1 s+ H
本章将介绍laravel中的用户认证模块Auth的具体使用。我们使用Auth模块能很方便完成用户的登录,注册等功能。并且完成了用户认证之后,我们需要对用户权限进行管理,同样,我们是使用laravel的Auth组件来完成用户权限管理。对用户对文章和资源的增删改查的权限进行统一管理。...
4 S9 S( b! m/ |/ B6-1 用户模块章节介绍, k) Q! P2 U4 W0 z& J, U
6-2 使用路由和模版搭建登录注册页面
" ?: f- \: ^3 l6-3 用户注册逻辑的实现(上)
4 e) U1 ~( I0 L1 ?+ m7 u0 I6-4 用户注册逻辑的实现(下)5 C3 a! i) g! D5 E) ?; _& C! q6 a
6-5 Auth门脸类的讲解及配置流程0 L- f+ u6 L* I |+ m& s* U. p
6-6 使用Auth实现用户登录逻辑( l/ b) w! F) B# t
6-7 策略类-policy用户授权
/ v, C) s1 v) h+ M2 J! w6-8 使用Policy实现文章权限控制% f( [' q, Q' U0 F
6-9 文章路由控制的实现& {, }! L2 _7 e, Y# {+ {, s$ i
6-10 个人设置页面上传头像功能实现
" L! Z, C$ w0 I9 K4 D+ M( k* i
! m+ M( D$ }# g. K+ G# O7 k第7章 评论模块
! R3 P9 n' y: r9 o+ Y# S; {本章讨论评论系统,主要完成对文章的评论的展示和添加。在本章中,我们建立文章和评论模型之间的关联,使用这种关联来进行文章评论的关联展示。我们还需要建立评论和用户模型的关联。本章中我们第一次使用到了模型关联,也会带大家系统整理一下有哪些模型关联,如何使用。...$ `6 Y- ]& h [( x0 J5 j" o
7-1 评论模块章节介绍7 J: {" Y, _- a2 x/ _
7-2 migration创建评论表
9 j6 N: R3 Z; K- k7-3 介绍Laravel模型关联1 n1 i( t; K) H" u; h
7-4 创建评论模型
$ Z3 ^) @% Q1 `- c% r7-5 使用路由和模版搭建评论页面
1 g* F, r) U0 s" Z$ g" |7-6 添加评论业务逻辑的实现
1 O. l( L' ?4 |1 e8 _9 i7-7 使用模型和模型关联实现评论列表页- S+ E/ a* A8 U% Q* ^
7-8 使用withCount实现评论数8 H+ y+ N2 V1 U- A' W1 _7 e
3 ?. N4 p' i* \
第8章 赞模块
9 f# c8 ], _. o- C4 ]6 c对一篇文章进行赞和取消赞是我们经常实现的一个功能。我们同样使用文章和文章表和赞表的关联模型来完成这个模块。在这个章节我们会看到ajax提交在laravel中的使用,以及如何在ajax中进行csrf保护。1 W1 i7 f+ H( Y' O7 l8 j
8-1 赞模块介绍
. z1 K& u3 H, ]. D% s: ]- Y8-2 migration创建数据表
' O6 ^. W) H* W2 b; ^2 U9 N2 p3 b" r8-3 使用模型实现赞页面的逻辑的实现/ c0 l2 n, o/ e }9 T: b
8-4 扩展withCount实现点赞数和评论数 r( U+ Q6 `( ^- Q
9 F ?/ \7 p+ @$ R7 F3 A第9章 搜索模块
6 `9 x' Y1 } U' N- ^本章着重将Laravel与elasticsearch进行结合进行文章搜索。首先,我们需要搭建并使用elasticsearch及它的中文分词插件然后我们会使用laravel的command命令开发一个创建elasticsearch索引的命令,接着我们使用laravel5.4的Scot组件,保持文章和搜索引擎中的文章索引同步。并且对文章进行关键词搜索,并且让搜索结果拥有分页功..." F0 t$ V3 \" w
9-1 搜索模块介绍
) D# j# r# q& q! s) w1 ~4 `7 ~1 d+ f9-2 搜索模块的设计
6 t& b9 a# D, N* b2 e- Y3 h8 m9-3 介绍elasticsearch及相关插件
3 p$ ?# s7 E& [" S6 a: e) _' _9-4 梳理实现搜索模块的具体步骤! ^8 L6 Q9 k3 P
9-5 elasticsearch的具体安装
|2 T) |1 S& h- N" K! C( B! r0 C9-6 Laravel的scout包安装及Laravel-es包安装
7 `, m c8 K8 |& h+ E9-7 使用laravel的Command实现搜索引擎索引和模版的建立" d4 v8 z7 a+ Q; l& B
9-8 关联模型并使用scout命令导入数据' d7 }0 l' c2 }$ P% Q% m
9-9 使用路由和模版搭建搜索结果页% D2 y0 {2 h2 \5 j
9-10 使用scout实现搜索结果展示及分页
" w2 Z* y% Y) K- m4 F; L
/ e/ E. u7 D- }3 I+ g/ T第10章 个人中心模块% B8 A# g6 d* w- ?" D- @9 U# E
本章内容将完成个人中心页面以及好友关注的功能。我们在这个模块中依赖创建的关系表完成多对多的模型关联,并且使用laravel的模型,对这些关联进行维护。
# ] R4 ]5 P* l" A3 g | U( B10-1 个人中心模块介绍
! l- W' q; W# ^; O. t5 P& j10-2 使用migration创建数据表和模型
9 R3 x5 D; n/ _1 h8 C/ m1 J1 d10-3 实现多对多模型关联5 v' |/ A& }6 `3 l0 i6 @
10-4 使用路由和模版搭建个人中心页面0 ^" _+ {7 ] p7 @: L' g4 U
10-5 使用多对多模型实现个人中心逻辑(上)& t% l- f$ O/ D \
10-6 使用多对多模型实现个人中心逻辑(下)# H+ k' ~5 F" O, \
$ ?& R. x- n; f& Z
第11章 专题模块( K2 W* O5 O' F @4 J) g# k. G
本章开发专题模块,以及文章对专题的投稿。本章的难点在于如何获取一个人未投某个专题的文章列表。1 v% S+ d* z- U) e5 Y
11-1 专题模块介绍6 m& K B5 K$ H& l$ F O
11-2 使用migration创建数据表和模型$ O) m8 L% z4 B+ ^6 Z) Q
11-3 使用路由和模版搭建专题页面 试看 o- ]/ f* V( S9 |: V0 d2 d
11-4 使用viewcomposer实现公共区域的专题列表
" g/ M# w7 Y( p3 |5 ~4 j0 @11-5 介绍laravel中的scope+ T% s- g) F% H+ I4 S; i& ^ m3 M4 n
11-6 使用scope实现某个用户未投稿的文章
- T- b' K/ N W P11-7 周边模型关联5 W! V- c% @9 m0 J5 x6 f* l
11-8 使用scope等完成专题详情页逻辑7 K1 J. r J; e& n1 P9 B
11-9 使用模型操作完成专题的投稿操作
0 r% c6 I" g9 n2 X$ N, X( d% _' R: i, ^$ e+ l$ y; V
第12章 后台基础框架搭建
8 V( L- g2 Y8 Y9 Z; ?" ]本章着重使用基于bootstrap的Adminlte模版来搭建管理后台的基础框架,如何在laravel中使用这些网上现成的模版是本章的重点。前台和后台我们会放在一个项目中,如何在一个项目中包含前台和后台,MVC层和文件夹,配置文件,路由都需要如何设计,是这个章节需要解决的问题。...
$ s9 {+ M/ q# [5 N+ E12-1 管理后台章节介绍
" m( J9 a& c& ~: [/ c12-2 设计使用一份代码中包含前后台
. N" \$ d9 ]3 t3 ~. Z! G12-3 前后台的模版区分
( Y5 ]1 v- t7 G" A% N12-4 adminlte模版皮肤介绍和嵌入7 K6 c" d) J# `$ I7 L
12-5 使用adminlte搭建管理后台登录页面
+ F' y6 ?( t+ X1 v; P( ]5 v12-6 使用adminlte搭建管理后台首页" c3 d1 X" Q9 `/ d. q5 Y
12-7 使用blade的layout抽取出管理后台页面公用部分
* z* h+ |, T% v! y0 K/ z/ \12-8 后台表前缀和模型约定
# c+ x$ P6 _& b% h( H- ^12-9 使用Auth和guard搭建管理后台用户管理
5 `4 |4 _" e$ M' C! R+ w12-10 使用Auth实现管理后台登录页面4 V% v, f5 h; l
; y6 R; i$ d! z; F第13章 管理人员模块
" ^* A4 f5 z5 f: Q+ C8 H5 C本章使用已经搭建的后台模版,来完成管理人员的增加,删除,修改,查找的页面。这个也是我们使用后台模版完成的第一个后台模块,在后台的路由使用和通用逻辑上面,我们会给出一个范例。; k# H! b5 z2 f( r2 ~) k" V
13-1 管理模块简介$ P5 U- P7 F" v# f
13-2 管理人员的列表和增加页面
0 Z4 O, c5 b t* a9 q% d% ^- B0 x1 w9 w13-3 -管理人员的列表和增加逻辑
}" W1 s9 D: Y/ G6 Q+ }
: {! R0 x6 M' T: t* i) o' c, h第14章 审核模块
7 k/ |. {: D' g9 r$ j本章完成后台审核人员对文章的审核功能,虽然是一个后台项目,但是也是一个前后台相关联的模块,我们完成的是先发后审的机制,在laravel中,如何完成对应的文章审核逻辑,前台如何过滤审核未通过的文章,都是这个章节需要讨论的内容。...$ Q" p2 w! w, D5 H% D
14-1 文章审核模块介绍+ q9 B( c( m+ s p3 `
14-2 文章审核的需求分析: V, e" d/ }5 h" Y. T) X9 U
14-3 使用全局scope进行软删除模型* ~9 O0 }: \9 D3 K) s2 H
14-4 完成文章审核模块页面
( l: C {! _/ f+ ~: l7 a14-5 使用withoutGlobalScope来完成文章审核功能0 \4 _' s# B4 n
7 g: R* G3 ^0 y2 e第15章 权限模块3 Z- B4 G# [- g4 t3 n+ w8 D
本章重点在于带领大家完成后台的权限模块,我们同样也是使用laravel的Auth组件,另外完成了一套权限系统,我们会带领大家看下如何在一个项目中拥有两个权限控制系统,并且在路由中控制两个系统。接着,后台的左边栏菜单是根据不同权限,展示不同菜单。这个也是通过权限系统加左边栏的菜单组件来共同完成的。...6 f) |4 H6 U$ h7 h) c% @4 R, D
15-1 权限管理模块基本介绍
% C, w7 V G+ h+ |6 t) ^15-2 分析用户角色权限模型
$ X: J- C, d( u! i3 z: h15-3 创建表和模型
p* V" m/ ?; x! x# |. _% t0 T15-4 使用hasMany搭建模型关系 试看: T. N" A" ?# Z& n/ p1 h# A; S
15-5 搭建路由和页面模版/ M6 n" h- a3 A; y5 k
15-6 逻辑实现-用户篇& e% r& t( Z$ Q. |- K/ S* Q
15-7 逻辑实现-角色篇+权限篇( v2 P! m( I n* p& C, D, ~
15-8 逻辑实现-测试和数据添加+ ~3 B8 {2 }" h9 A. }% N% c5 k
15-9 使用laravel的Gate实现权限管理(上)1 G) B# @4 o( Q! g% Q
15-10 使用laravel的Gate实现权限管理(下)& M. A: g* Y# E1 O6 O
2 z3 Z: y: k# }% T1 Y
第16章 专题管理模块0 Q3 d" E" X h+ g
本章重点在于带领大家完成后台的专题模块管理。如何对前台的专题模块进行增删改查操作。
* T0 F' D; W( {: ]. ?1 Y16-1 专题管理模块介绍
# K1 E L" r8 Q, E/ u3 q, ^! Y }16-2 专题管理模块需求分析2 R# Z1 W* n0 Q& s/ l
16-3 Laravel的Resource介绍
) y. r9 u3 Z/ z# s, k2 ^( J16-4 使用Resource完成专题路由- @) a8 F# g' A7 P/ C' f
16-5 专题管理模块完成 l7 c# `0 `3 _, `7 @7 o9 a6 y5 n
7 N: j# e& v: }3 X; l# x
第17章 系统通知模块
5 f( [9 ^5 }) s# ~本章使用laravel的队列来完成系统通知的异步发送。系统通知是群发或者多发功能,我们需要使用一个异步机制,laravel中如何使用数据库来完成异步队列,并且在队列中进行任务。# M( g! B" H8 @0 z7 B" a) C
17-1 通知管理模块介绍
) b5 h) k' x- F1 e2 D$ Q* b17-2 具体需求设计和分析
! V! d/ q' v+ H- v; M3 S! F0 R17-3 -创建表和模型8 A: [- A% L) x. O" Z
17-4 使用resource完成后台页面和逻辑! N; `+ I4 h8 s: Q( v
17-5 完成前台页面和逻辑+ G3 i4 A0 g" X4 `# H& a0 `3 x# |% |' \
17-6 Laravel中队列的介绍8 y/ k; E& i: B
17-7 使用Laravel的队列实现系统通知
/ t3 q& }! D3 N8 Y2 t8 R; C6 x) A. L2 Z' b
第18章 性能优化
2 M+ y% }) a l N本章介绍laravel特定的一些性能优化方案。包括使用debugbar来查看页面效率,如何优化sql查询次数,如何使用路由缓存,配置缓存等来优化页面速度。
% V6 d( x, u- P0 N! l) h18-1 性能优化章节介绍
1 M9 n5 k5 p: ]0 f! t18-2 使用Laravel自带的优化命令优化
( o2 L0 @$ f/ m7 A/ [18-3 使用debugbar进行问题定位, S% x n, N, n {: K& c4 n7 l
18-4 使用预加载进行优化0 C* L0 [& m% Q" t& f5 w6 _. x& {
18-5 使用DB_listen进行慢sql的查询
' x6 z3 j# k$ s
& u; |, L1 {9 r5 _【下载地址】
+ q4 ]: r& E M
4 _- C" C: u* k7 k9 l* P; m/ @9 Z
0 |# J- t( \! @2 T* z; ` |
|