. Y; O9 o) |9 E ?
. I H% L2 {4 s5 H% K H【课程简介】
- n) I& D0 r, T8 |3 l/ KLaravel是PHP工程化开发的趋势,本课程使用大量Laravel基础及高级组件,结合Mysql异步消息队列、ElasticSearch搜索引擎、Debugbar调试利器、Laravel性能优化等技术开发前后台完整的社交网站“简书”; b0 A% G( F! {& o/ x- a) |0 q7 ^7 ?) T
6 |+ F# f2 ^# N& Z% ?, Y1 a# B" W【课程目录】9 U: P! j5 S- M
第1章 课程介绍
. y: d2 q, Y* v7 h4 [6 F' J介绍课程的大体脉络和课程安排
" w6 m- F! E) Z; O$ A3 x) p+ ~. i5 S3 X1-1 课程概要介绍# d9 E8 X$ o$ O$ m9 f
) D$ Z) L% [& t$ v. Y第2章 Laravel 5.4介绍- Y6 }5 e! M" J7 F
本节课会带领大家介绍laravel的各个版本历史以及讨论php框架的未来发展趋势。把laravel周边的生态环境一一展示。
: u: p! g5 q0 n& e, e* h) Q6 ^2-1 Laravel 5.4介绍
, e( |- F1 Q% }# }9 e9 {0 J2-2 Laravel 1.0~5.4 版本演进
5 `" V9 I* q$ M" e6 N2-3 Laravel的社区生态- r; W4 \) ]' N& r& H9 n
2-4 与其他框架比Laravel的优势(上)
" w2 ^# [- M4 A2-5 与其他框架比Laravel的优势(下)9 K3 q' F8 U+ _. {4 B
! v" @0 W# e" d6 b& q, C第3章 安装启动Laravel项目
" T3 D p0 p7 R E( _5 O本章介绍laravel是如何安装的,我们将使用composer工具对laravel进行安装。使用composer的时候,我们会修改下composer的镜像。不仅如此,我们还会在安装完成之后,带领大家一一介绍下laravel的目录结构和配置文件。让大家对laravel有个全局的了解。...
9 Z2 B" w* u+ `7 R: r6 o3-1 Laravel的安装环境' u) ?. g- {3 O; y& d, K7 z
3-2 PHPstorm + squelPro开发工具介绍2 B4 y0 _7 O" p" o
3-3 使用Composer安装Laravel 试看, Q2 i: y: h r7 R# F4 a* {( o! g
3-4 启动Laravel- p6 G+ Q' R2 g8 ]5 r
3-5 Laravel 目录结构介绍, }% k2 N9 t0 L& C8 ` {
3-6 修改.env数据库配置文件
9 z8 J9 m4 ]" ^% P5 @- q, M# V& }; Z9 M5 F" ^1 m
第4章 文章模块
0 o& J) f+ q. Z# ~" E1 V本章介绍最核心的文章模块。这是我们这个项目最核心的一个模块。这个模块中会第一次用到路由,模版,数据迁移,数据填充,控制器,数据模型,tinker调试器等。在这个模块中,用到路由和模版搭建页面,并且使用数据迁移来搭建文章表,在做到分页逻辑的时候,我们使用数据填充往数据库中填充多条数据,并且基于ORM模型搭建mod...
4 g! O( | A3 C2 @5 p: {/ F4-1 项目相关模块介绍
7 x0 K$ S1 g e8 u u0 E9 ]' k4-2 文章模块章节说明
, K. x5 y, @+ C W' ^4-3 Laravel路由的几种形式; u. M0 X' N' w3 g" {
4-4 文章模块路由的实现
) E: b& t4 L' F0 D, c# o4-5 blade模板渲染文章页面
/ U$ D. F# v7 ]# Q0 s4-6 Laravel的blade模版 p4 W% P( F) F4 w" T' [
4-7 balde语法优化文章模版页面
) i& A1 f/ w9 _* G. |; H0 T4-8 使用migration创建posts数据表4 Z. N7 G c( q: V+ D8 {1 T* p
4-9 ORM创建文章模块模型% Y: E9 [+ V; n5 z* m
4-10 文章列表页的实现
' O$ k) B+ F% x3 Q; h& D* |* C4-11 文章详情页的逻辑实现
9 V) v5 Q5 M: C6 @2 V4-12 csrf+富文本编辑器创建文章(上)
1 ~( ~( w) x4 b( W3 U2 J4 M# s4-13 csrf+富文本编辑器创建文章(下); f/ ^6 x$ F0 P z6 x" d
4-14 文章编辑的逻辑实现2 H' \. I1 {* h, J
4-15 使用模型完成删除文章操作
7 t9 W( g& C' }" z& g2 e; }4 n4-16 章节重点总结" E5 G: @, W2 D F
+ `5 l; ` {; S' N第5章 Laravel核心思想! A# B3 ?0 R; {( M
本章会介绍laravel的几大核心思想,容器、服务提供者、门脸。这些思想和概念是laravel中最难理解的,结合上一章我们的文章模块,我们对这些概念能有更深的理解。理解完概念之后,我们教大家技巧,如何查找laravel中的类包含有哪些方法。..." w( W: d. K( j- [. E( [4 t; L
5-1 Larave核心思想之服务容器8 J' y7 h8 B. u# G7 Z# ]
5-2 Laravel的核心思想之服务提供者
; r, V2 c$ }+ K8 @# e% B* `5-3 Laravel的核心思想之门脸模式2 O! M4 B; I" U& a
5-4 示例-分析Laravel核心日志类 N& Z1 R6 Q7 x5 s G! j- u
5-5 技巧-如何查找门脸及注入类方法% f$ w' \" k6 n$ b- w1 ~
1 b1 G m# d4 ]9 d9 j第6章 用户注册登录注册模块
- g# Y4 h8 b* c' u本章将介绍laravel中的用户认证模块Auth的具体使用。我们使用Auth模块能很方便完成用户的登录,注册等功能。并且完成了用户认证之后,我们需要对用户权限进行管理,同样,我们是使用laravel的Auth组件来完成用户权限管理。对用户对文章和资源的增删改查的权限进行统一管理。...9 w6 V& r; l- B
6-1 用户模块章节介绍2 o' A/ q2 c5 p+ B, X* b/ I+ a
6-2 使用路由和模版搭建登录注册页面8 L; p. k7 j# u! J8 H- Q! s
6-3 用户注册逻辑的实现(上)
l# N0 E, l' B& d: V+ f" K6-4 用户注册逻辑的实现(下)
2 e D7 Q# x0 `# e# Z4 c8 V* c6-5 Auth门脸类的讲解及配置流程* d7 V2 U+ S' h: G5 c
6-6 使用Auth实现用户登录逻辑
5 j8 g& H I$ y& m6-7 策略类-policy用户授权
4 O7 _7 N4 z3 a( l3 Y. ] t( A6-8 使用Policy实现文章权限控制% a( g# \0 @( o# M+ n% q* D
6-9 文章路由控制的实现" c0 |& g0 A8 R- h- K+ D
6-10 个人设置页面上传头像功能实现
" L7 S8 y5 ^5 d5 t {* K7 c; \& ^% [- v* Z v8 `
第7章 评论模块
" B7 t: b R% o9 e; P3 q$ h本章讨论评论系统,主要完成对文章的评论的展示和添加。在本章中,我们建立文章和评论模型之间的关联,使用这种关联来进行文章评论的关联展示。我们还需要建立评论和用户模型的关联。本章中我们第一次使用到了模型关联,也会带大家系统整理一下有哪些模型关联,如何使用。...
1 }2 s" f6 N X2 N K7-1 评论模块章节介绍/ z7 t/ p9 S! }3 J! k' y
7-2 migration创建评论表
! S" j1 h- v" N) ?* \; P7-3 介绍Laravel模型关联/ D# z: U+ |6 C- Q; s8 O7 Y
7-4 创建评论模型8 [1 Q; P1 P3 v) |6 G
7-5 使用路由和模版搭建评论页面, T" |6 |0 ?* d! w* |) B
7-6 添加评论业务逻辑的实现
1 H) j! q3 F- T) ?9 U7-7 使用模型和模型关联实现评论列表页
, i8 `! t. W( t: q% I2 ?! \( {7-8 使用withCount实现评论数1 k' f9 D& d; e) C7 ~
4 p$ M4 v9 `) `1 x' y o9 ]第8章 赞模块
% X6 |* n, q) O对一篇文章进行赞和取消赞是我们经常实现的一个功能。我们同样使用文章和文章表和赞表的关联模型来完成这个模块。在这个章节我们会看到ajax提交在laravel中的使用,以及如何在ajax中进行csrf保护。
7 X, L+ f. \/ ]8 ?% ?, U- R8-1 赞模块介绍
) C7 j/ T, f5 v7 U8 ~! B) r) T/ v ]8-2 migration创建数据表# K" m+ G% O7 A$ Q4 w, I0 a
8-3 使用模型实现赞页面的逻辑的实现
) N. N; e* J5 J7 g* k7 L8-4 扩展withCount实现点赞数和评论数
8 g+ R- e) Z; ]0 Y9 h9 q1 j# z' ^6 [2 h j7 [. U+ d( E g; t
第9章 搜索模块
& a+ \8 ^4 ~$ ]+ H# `, U8 E/ G本章着重将Laravel与elasticsearch进行结合进行文章搜索。首先,我们需要搭建并使用elasticsearch及它的中文分词插件然后我们会使用laravel的command命令开发一个创建elasticsearch索引的命令,接着我们使用laravel5.4的Scot组件,保持文章和搜索引擎中的文章索引同步。并且对文章进行关键词搜索,并且让搜索结果拥有分页功...
9 s0 s) }) @* `$ b9-1 搜索模块介绍1 R8 M& Z$ ^" \$ ~! n
9-2 搜索模块的设计
; X; V. V; a5 K7 Z6 G4 ?3 t9-3 介绍elasticsearch及相关插件6 P: t) Q- I$ M) {/ @
9-4 梳理实现搜索模块的具体步骤 y; M, r5 M& H. y2 e( A& O
9-5 elasticsearch的具体安装( l0 \* m" [+ }* M
9-6 Laravel的scout包安装及Laravel-es包安装8 M. i) K+ A% t% S$ H
9-7 使用laravel的Command实现搜索引擎索引和模版的建立
! J5 G9 A2 {1 u4 G S9-8 关联模型并使用scout命令导入数据
) x( M0 A' q6 l! f' y9-9 使用路由和模版搭建搜索结果页
: V7 @: l- ]) n4 O: F( L" [9-10 使用scout实现搜索结果展示及分页
1 F% h+ H* W1 I* n. g2 j- B9 ~
0 X0 n# t0 h+ v8 t第10章 个人中心模块; s7 a P- v2 ?* |$ ~
本章内容将完成个人中心页面以及好友关注的功能。我们在这个模块中依赖创建的关系表完成多对多的模型关联,并且使用laravel的模型,对这些关联进行维护。. e! J) h2 d0 z9 a' e; i
10-1 个人中心模块介绍
! ?) t- }' H" z" @; `10-2 使用migration创建数据表和模型" \! m4 ~3 K' i: Y) C7 ^, E
10-3 实现多对多模型关联
3 A2 n: }$ \' F' a9 A10-4 使用路由和模版搭建个人中心页面1 e7 M9 ]% E( s" X( d, ]
10-5 使用多对多模型实现个人中心逻辑(上)
9 n$ N1 J! ?5 q, G10-6 使用多对多模型实现个人中心逻辑(下)
! }# X( q l, [; V7 L! R5 E
) |% j% V- f7 A0 n: h# C0 J4 Z第11章 专题模块
( X* s$ |+ R- ^( c$ [本章开发专题模块,以及文章对专题的投稿。本章的难点在于如何获取一个人未投某个专题的文章列表。9 d3 F4 p& ]: v( ?' m) U9 r
11-1 专题模块介绍
* _( q! }5 V0 b$ U11-2 使用migration创建数据表和模型
3 ?% z/ L' [; M# V11-3 使用路由和模版搭建专题页面 试看0 U$ ^4 m; @. i2 F. L
11-4 使用viewcomposer实现公共区域的专题列表$ R2 {: j. n r: H3 x7 W
11-5 介绍laravel中的scope
. J2 i g, B2 B11-6 使用scope实现某个用户未投稿的文章
8 [9 g7 {$ T" k/ q P11-7 周边模型关联3 H3 R9 x4 T6 W2 E
11-8 使用scope等完成专题详情页逻辑: ^* ~ V, I/ M+ m
11-9 使用模型操作完成专题的投稿操作8 U6 [& h1 Y/ y! |- H* K
* d4 L8 k; g5 ^0 D! W6 O; {& Y
第12章 后台基础框架搭建
9 g W. z( b1 ]本章着重使用基于bootstrap的Adminlte模版来搭建管理后台的基础框架,如何在laravel中使用这些网上现成的模版是本章的重点。前台和后台我们会放在一个项目中,如何在一个项目中包含前台和后台,MVC层和文件夹,配置文件,路由都需要如何设计,是这个章节需要解决的问题。...
# x# D0 J K) Q* A& Z/ G# s: ^12-1 管理后台章节介绍
1 X( F3 W' y3 ^2 ~" Y, R" j0 ` X2 V12-2 设计使用一份代码中包含前后台
" |3 Y) r: t$ A4 Y7 ^; w1 M12-3 前后台的模版区分
4 o# E$ ]6 R$ I4 R% I8 `12-4 adminlte模版皮肤介绍和嵌入
/ l" A* I5 s4 B0 l% w12-5 使用adminlte搭建管理后台登录页面
* d) N- o7 P# R4 D7 Y; S! |12-6 使用adminlte搭建管理后台首页8 b+ f4 y7 o3 H7 q
12-7 使用blade的layout抽取出管理后台页面公用部分
$ g% v) _) a% c" M) q; o12-8 后台表前缀和模型约定: J6 M/ \1 j) O2 l* W
12-9 使用Auth和guard搭建管理后台用户管理9 ?" y. M1 I$ O1 l. H' E7 k
12-10 使用Auth实现管理后台登录页面1 ^9 v5 J3 u" ~5 `& L# S$ z
; b, i2 u; ^: D9 l: i第13章 管理人员模块
$ v6 A0 t- b8 W0 P8 g, H. W本章使用已经搭建的后台模版,来完成管理人员的增加,删除,修改,查找的页面。这个也是我们使用后台模版完成的第一个后台模块,在后台的路由使用和通用逻辑上面,我们会给出一个范例。
& D1 u$ ~3 Q- S' z13-1 管理模块简介& } N1 y8 ?4 ~+ \& t) l% B
13-2 管理人员的列表和增加页面! {( O F4 A2 z2 B9 \0 b2 w+ _+ S- s
13-3 -管理人员的列表和增加逻辑
$ I* n3 e$ R3 P* s. [; `- _* J' V9 t1 e2 Z: e* B6 U, c" s
第14章 审核模块
2 e+ N: X# b* [7 \本章完成后台审核人员对文章的审核功能,虽然是一个后台项目,但是也是一个前后台相关联的模块,我们完成的是先发后审的机制,在laravel中,如何完成对应的文章审核逻辑,前台如何过滤审核未通过的文章,都是这个章节需要讨论的内容。...
" L; A, @# b& s! r8 b* t14-1 文章审核模块介绍
# R- _# O9 b k9 Q X14-2 文章审核的需求分析3 T" \% e8 j/ x( Y
14-3 使用全局scope进行软删除模型
, H8 b9 M7 N5 O6 G0 D14-4 完成文章审核模块页面
# T% X8 T) }) p! X14-5 使用withoutGlobalScope来完成文章审核功能
% [/ Y# Y0 m& `3 o- h$ s. \
1 l$ j! y# y' l. f- S8 f5 a第15章 权限模块 _+ E5 {' N: v& q, F4 E* T
本章重点在于带领大家完成后台的权限模块,我们同样也是使用laravel的Auth组件,另外完成了一套权限系统,我们会带领大家看下如何在一个项目中拥有两个权限控制系统,并且在路由中控制两个系统。接着,后台的左边栏菜单是根据不同权限,展示不同菜单。这个也是通过权限系统加左边栏的菜单组件来共同完成的。...
- m# }) n ~8 `4 B3 m. F. `1 k; R15-1 权限管理模块基本介绍
" l/ X6 L Q( d M7 r15-2 分析用户角色权限模型
# M) x* S8 Q/ w4 W) }3 s m15-3 创建表和模型2 {- m3 J7 Y8 ~0 _5 Z6 r7 o
15-4 使用hasMany搭建模型关系 试看
+ Z9 S) Q+ a* e15-5 搭建路由和页面模版
) e" b& x4 z! l* {0 Y15-6 逻辑实现-用户篇( o0 P+ H; Q8 ~" X
15-7 逻辑实现-角色篇+权限篇8 }$ T2 g+ i9 }4 i& a7 O4 Z
15-8 逻辑实现-测试和数据添加
' ~" d2 T% C* `3 z. D5 t1 t15-9 使用laravel的Gate实现权限管理(上)
* H6 Y) \4 `* z6 _9 x15-10 使用laravel的Gate实现权限管理(下)
7 |9 I5 }; v3 Z6 L! X
5 T: ?4 L& n( t7 b, T# q4 E5 [第16章 专题管理模块& q4 d# z# o$ |5 Y& D9 x: V! k+ Y0 c
本章重点在于带领大家完成后台的专题模块管理。如何对前台的专题模块进行增删改查操作。
$ e a0 X: g0 V1 Y L* t4 D4 O16-1 专题管理模块介绍7 t/ ~, x4 N9 H {. W4 ^* L. B
16-2 专题管理模块需求分析
) [' `3 i* w/ ?+ `( Z* P16-3 Laravel的Resource介绍& r) u/ i# d0 s0 h+ F0 ^3 f( l
16-4 使用Resource完成专题路由
; O& a1 U' d* s, u ?( J16-5 专题管理模块完成
( {+ R) a5 p7 r2 V) A+ ?
D. y1 i, N$ l( H u第17章 系统通知模块
; `* i, Z# s1 i本章使用laravel的队列来完成系统通知的异步发送。系统通知是群发或者多发功能,我们需要使用一个异步机制,laravel中如何使用数据库来完成异步队列,并且在队列中进行任务。
( M1 |# n- W7 s' f i6 F0 o2 F17-1 通知管理模块介绍
: a3 r% [9 {. X' O6 \( _17-2 具体需求设计和分析
& b7 _* q$ Z! k- C7 h) c0 f17-3 -创建表和模型
, c. h* m* `3 X17-4 使用resource完成后台页面和逻辑. o& V- Z. Q4 j+ l
17-5 完成前台页面和逻辑
9 X, ?( W# r$ }2 F17-6 Laravel中队列的介绍
; s5 E- A$ o) H7 g$ z9 F17-7 使用Laravel的队列实现系统通知
1 ~( F0 C* M' d/ f. [* o' d! a" d7 x/ U- W/ _
第18章 性能优化
A: h% c! l; {1 Y# X: n. a$ b本章介绍laravel特定的一些性能优化方案。包括使用debugbar来查看页面效率,如何优化sql查询次数,如何使用路由缓存,配置缓存等来优化页面速度。6 m g1 E C5 r3 l' R1 c
18-1 性能优化章节介绍
# v$ O( E1 g8 G: i18-2 使用Laravel自带的优化命令优化
* \/ a! U4 ^+ J3 }: h$ R9 X18-3 使用debugbar进行问题定位
& Z5 k" d% D% B0 R18-4 使用预加载进行优化
; q/ e% T2 b: f18-5 使用DB_listen进行慢sql的查询% l4 j+ r! n M: y* N$ Q
- f" {" t. \- L! z( Q【下载地址】9 ] P& V2 v& _2 m2 D
5 a1 V% M8 M5 D4 f% C* L9 L1 O* Z
, B# F9 l8 i O$ m# t3 a& |. X4 G |
|