! k/ D' o7 {$ s! M$ b( f( f' s/ Q( |) t' o
【课程简介】
( s5 d! y0 A6 rLaravel是PHP工程化开发的趋势,本课程使用大量Laravel基础及高级组件,结合Mysql异步消息队列、ElasticSearch搜索引擎、Debugbar调试利器、Laravel性能优化等技术开发前后台完整的社交网站“简书” h' W9 S5 x9 K' r$ ?$ t( C, l* {
$ `4 f+ |4 m7 x. _9 w: {" M
【课程目录】1 I1 A1 F/ w4 n$ x6 ~9 w
第1章 课程介绍
/ W3 D, V* I! z7 U( |介绍课程的大体脉络和课程安排
( `8 [% W$ c4 U7 B) v1-1 课程概要介绍
4 |7 M& \6 F5 c( B/ `7 E
1 V7 r- n9 f$ r7 `, w W ?8 U第2章 Laravel 5.4介绍& h9 s4 z+ s) d" ^- T; M( [2 D4 G
本节课会带领大家介绍laravel的各个版本历史以及讨论php框架的未来发展趋势。把laravel周边的生态环境一一展示。2 |% T0 ?5 i' A7 y
2-1 Laravel 5.4介绍
# ~( L. b" E- o+ {# e+ ^2-2 Laravel 1.0~5.4 版本演进
% Y; k3 n# j6 M# [1 `; W- X. x7 a2-3 Laravel的社区生态
8 [& z: O) I7 F+ Q2-4 与其他框架比Laravel的优势(上)
+ U( R$ v! w. |7 X4 H& l2-5 与其他框架比Laravel的优势(下)
7 E6 L8 O% a' C- c% Y9 r* C% w3 c' S5 p& J; {" y
第3章 安装启动Laravel项目
+ M' M: g h" B" ` d本章介绍laravel是如何安装的,我们将使用composer工具对laravel进行安装。使用composer的时候,我们会修改下composer的镜像。不仅如此,我们还会在安装完成之后,带领大家一一介绍下laravel的目录结构和配置文件。让大家对laravel有个全局的了解。...3 Y3 ?3 h4 ~, A% S" j' C
3-1 Laravel的安装环境/ j$ a( O7 Q/ q( o" A4 a v
3-2 PHPstorm + squelPro开发工具介绍
4 }" B# u4 E, X5 K1 h/ z" Z. j3-3 使用Composer安装Laravel 试看
e8 |" y% o% n3 N ~+ N) o& F3-4 启动Laravel
( e# {. p! ~& k' U# i3-5 Laravel 目录结构介绍
9 d$ X! }) C8 U0 M7 u6 L3-6 修改.env数据库配置文件, [8 j0 @1 P8 \$ w* ]' g9 l
; d- o" Y1 e2 y9 A0 z/ a- e
第4章 文章模块2 R+ l, w$ }6 V& r
本章介绍最核心的文章模块。这是我们这个项目最核心的一个模块。这个模块中会第一次用到路由,模版,数据迁移,数据填充,控制器,数据模型,tinker调试器等。在这个模块中,用到路由和模版搭建页面,并且使用数据迁移来搭建文章表,在做到分页逻辑的时候,我们使用数据填充往数据库中填充多条数据,并且基于ORM模型搭建mod..." Y& `; r5 v3 W
4-1 项目相关模块介绍
" K# k' [ P8 M( m0 D( T% C1 a4-2 文章模块章节说明. k" R+ P9 N" W4 T- T5 U1 ^; C
4-3 Laravel路由的几种形式
# T) u: F1 h! s, c* o4-4 文章模块路由的实现
+ X9 w4 b9 \ Z3 V0 p4-5 blade模板渲染文章页面0 v9 }- N% G" v6 G, T6 z
4-6 Laravel的blade模版7 s1 B, a. D7 ~) r8 D$ G
4-7 balde语法优化文章模版页面! A5 l4 H* @4 ?5 v4 ~
4-8 使用migration创建posts数据表+ o- {8 @, @: f; |
4-9 ORM创建文章模块模型
- p/ t! D1 F" Y* n5 p' M @4-10 文章列表页的实现
& M0 u) H3 G, ^' Z. }. F4-11 文章详情页的逻辑实现
1 a' q8 j6 w. J9 P4-12 csrf+富文本编辑器创建文章(上)
p, g0 v9 q2 u4-13 csrf+富文本编辑器创建文章(下)
; _5 s1 N* o( z/ q) B, Z4-14 文章编辑的逻辑实现
2 h4 Q) N6 M2 Y$ u5 f2 X* ~& h' y4-15 使用模型完成删除文章操作 u* |) U9 T2 r" A" U% d& V+ m3 H
4-16 章节重点总结2 _2 p: A* A. L1 e
# ` F2 k+ C7 H7 E( [+ _第5章 Laravel核心思想3 b; f/ V+ T$ w% Q
本章会介绍laravel的几大核心思想,容器、服务提供者、门脸。这些思想和概念是laravel中最难理解的,结合上一章我们的文章模块,我们对这些概念能有更深的理解。理解完概念之后,我们教大家技巧,如何查找laravel中的类包含有哪些方法。...) x9 s6 E+ i2 x# v& {& {
5-1 Larave核心思想之服务容器
& @8 _( ?, S+ }' `, m* f5-2 Laravel的核心思想之服务提供者0 K _, E! B" f t% p
5-3 Laravel的核心思想之门脸模式2 @9 I8 k) r9 M3 C
5-4 示例-分析Laravel核心日志类
7 G& s4 Y% h% | ~5-5 技巧-如何查找门脸及注入类方法
! _. x0 e6 |- A3 [$ B8 K! I2 R
; T5 y j* O/ {4 H6 C( [第6章 用户注册登录注册模块( G7 i2 a0 i6 M
本章将介绍laravel中的用户认证模块Auth的具体使用。我们使用Auth模块能很方便完成用户的登录,注册等功能。并且完成了用户认证之后,我们需要对用户权限进行管理,同样,我们是使用laravel的Auth组件来完成用户权限管理。对用户对文章和资源的增删改查的权限进行统一管理。...
9 Z1 |! ~3 a7 {! r0 |/ c6-1 用户模块章节介绍$ C2 @' j! D/ h( V
6-2 使用路由和模版搭建登录注册页面- M6 Q# Y6 ]- `& k
6-3 用户注册逻辑的实现(上)$ }1 v7 o& O+ O g; `* R
6-4 用户注册逻辑的实现(下)
7 ]" H! u" Z) } U: z& G8 B6 u" G8 o5 B6-5 Auth门脸类的讲解及配置流程1 N# a9 M0 i/ K: w( q
6-6 使用Auth实现用户登录逻辑
% g- u6 ~2 P0 s" Y3 J7 K6-7 策略类-policy用户授权
/ B$ U Z6 e' t% H6-8 使用Policy实现文章权限控制
! x) L9 w& i* M$ t u: U$ J6-9 文章路由控制的实现
, Q6 C' M7 u/ E' i; A* d# K& _6-10 个人设置页面上传头像功能实现
& a" G: S# e7 k( t5 A( r: S
: J! _+ \/ K8 {2 l9 z第7章 评论模块
/ k, T, Q c0 ^- L3 H& W本章讨论评论系统,主要完成对文章的评论的展示和添加。在本章中,我们建立文章和评论模型之间的关联,使用这种关联来进行文章评论的关联展示。我们还需要建立评论和用户模型的关联。本章中我们第一次使用到了模型关联,也会带大家系统整理一下有哪些模型关联,如何使用。...5 _% M$ `9 a) E5 O5 x; E5 N- M
7-1 评论模块章节介绍
7 ~; G _0 h3 Z0 f d7-2 migration创建评论表3 `% _6 f' O/ f. Y& _
7-3 介绍Laravel模型关联
0 V7 t* G7 i- s1 D! p0 ^- f, S7-4 创建评论模型+ H" v0 I+ v2 _( D O
7-5 使用路由和模版搭建评论页面5 T7 s K5 @, K- A/ Z
7-6 添加评论业务逻辑的实现
" T9 H2 A6 [2 ^" ?, `( D. y' ~7-7 使用模型和模型关联实现评论列表页
3 f; t- {/ B+ Z- x# G4 K: @7-8 使用withCount实现评论数" F4 n# ?: W Y9 l
& ?' f9 h- q* R# m, g/ Y# @第8章 赞模块
+ k0 X+ D; d: D& a2 l1 v1 d对一篇文章进行赞和取消赞是我们经常实现的一个功能。我们同样使用文章和文章表和赞表的关联模型来完成这个模块。在这个章节我们会看到ajax提交在laravel中的使用,以及如何在ajax中进行csrf保护。
$ j& K: f5 B* M9 P! H, A8-1 赞模块介绍
8 a/ ~' H- k( Y# y$ m: W% l8-2 migration创建数据表 v1 ~1 g- S, f
8-3 使用模型实现赞页面的逻辑的实现
& }1 f7 V: s" n7 z$ i8-4 扩展withCount实现点赞数和评论数2 J' `( d3 r; q: l3 @& l' E
( ^. n6 g; `8 l+ P4 _
第9章 搜索模块% o+ p$ E. I8 ] Q- D
本章着重将Laravel与elasticsearch进行结合进行文章搜索。首先,我们需要搭建并使用elasticsearch及它的中文分词插件然后我们会使用laravel的command命令开发一个创建elasticsearch索引的命令,接着我们使用laravel5.4的Scot组件,保持文章和搜索引擎中的文章索引同步。并且对文章进行关键词搜索,并且让搜索结果拥有分页功...
1 g. ] ?0 v" f9-1 搜索模块介绍( l. u7 b: B8 O) E9 h
9-2 搜索模块的设计
" O( m; Q ~4 @7 M' `; E9-3 介绍elasticsearch及相关插件) B i' o2 M, S. m- S' \
9-4 梳理实现搜索模块的具体步骤' ~0 G; j4 j5 ?) h; x% c% A. }2 v( m
9-5 elasticsearch的具体安装
/ E7 o. h7 S3 X1 q% k5 z4 G+ W8 S9-6 Laravel的scout包安装及Laravel-es包安装$ k5 p# S2 F5 @( m9 H- V4 S
9-7 使用laravel的Command实现搜索引擎索引和模版的建立/ g7 W7 [6 P% {
9-8 关联模型并使用scout命令导入数据( i f% {1 d1 m0 C
9-9 使用路由和模版搭建搜索结果页
% t* P9 Z9 `3 m& v x9-10 使用scout实现搜索结果展示及分页4 s9 J- @' P# f2 Y) w. x
5 q$ `/ L/ F+ v8 Q/ D" d0 D第10章 个人中心模块
: Z9 K6 z4 H. F' N! \ M- F5 d本章内容将完成个人中心页面以及好友关注的功能。我们在这个模块中依赖创建的关系表完成多对多的模型关联,并且使用laravel的模型,对这些关联进行维护。( x7 h/ ~2 Y7 i7 {
10-1 个人中心模块介绍
! y3 T! x8 o) {$ z3 A& `$ W9 m10-2 使用migration创建数据表和模型
( z! Q- [, q& A* u6 `0 P10-3 实现多对多模型关联/ S2 s; D# R! t" R+ q* F! e
10-4 使用路由和模版搭建个人中心页面" o5 m* F6 \( v5 o9 l H/ l7 n
10-5 使用多对多模型实现个人中心逻辑(上)( E! M' S: L! C: Z
10-6 使用多对多模型实现个人中心逻辑(下)
0 [2 ~) L& n1 A. e, l. p) F5 p' v' h. I% i3 o" i* Z- g
第11章 专题模块
1 s5 ~7 C7 h- K/ x, p/ s本章开发专题模块,以及文章对专题的投稿。本章的难点在于如何获取一个人未投某个专题的文章列表。- Y9 p2 \, |3 B6 @3 k9 X; R
11-1 专题模块介绍
. [* z# U+ g {! a/ j11-2 使用migration创建数据表和模型7 b3 D0 J! k/ B/ j4 B
11-3 使用路由和模版搭建专题页面 试看1 z1 {+ O7 b, `% z
11-4 使用viewcomposer实现公共区域的专题列表4 g/ N+ O$ t' k% @. ~
11-5 介绍laravel中的scope/ s* ~' x8 j p }% s1 d" l4 t
11-6 使用scope实现某个用户未投稿的文章+ a2 S2 z0 _! @% G- C" k* ~6 C
11-7 周边模型关联
) f5 L) y3 J l+ _* Q/ Z11-8 使用scope等完成专题详情页逻辑 O$ ~6 D4 v1 O2 |" A! Z/ G
11-9 使用模型操作完成专题的投稿操作
3 J! z$ G5 h+ o, a U7 U. E
# k+ z& D3 B( `' o8 n第12章 后台基础框架搭建
8 b2 F/ v: n9 v+ j本章着重使用基于bootstrap的Adminlte模版来搭建管理后台的基础框架,如何在laravel中使用这些网上现成的模版是本章的重点。前台和后台我们会放在一个项目中,如何在一个项目中包含前台和后台,MVC层和文件夹,配置文件,路由都需要如何设计,是这个章节需要解决的问题。...7 p' X( M+ x+ o8 H: ^/ B
12-1 管理后台章节介绍# l: W4 q, h" D
12-2 设计使用一份代码中包含前后台; R' O; P; M0 G) {1 D" n* ?* I
12-3 前后台的模版区分. H4 y) p! O6 ^! K
12-4 adminlte模版皮肤介绍和嵌入
2 N* n6 H9 z: w1 V8 h* V9 t3 `12-5 使用adminlte搭建管理后台登录页面
2 Z, e- P2 R& J12-6 使用adminlte搭建管理后台首页, T2 l# U' e# V/ G G
12-7 使用blade的layout抽取出管理后台页面公用部分
, o1 O9 b$ s ]1 c# u5 t- Y. o12-8 后台表前缀和模型约定/ M( q( W' D$ V, m: Q/ |2 ?+ p6 S+ Q
12-9 使用Auth和guard搭建管理后台用户管理
) i" Q7 f) }( \5 \/ z( K+ a' O" y12-10 使用Auth实现管理后台登录页面; ] [" `/ m$ V4 c: k3 h6 l
5 f3 @ z8 G$ r& G5 v! @% q: S; b第13章 管理人员模块/ g0 m: Z' d: v* Z; A' L+ L
本章使用已经搭建的后台模版,来完成管理人员的增加,删除,修改,查找的页面。这个也是我们使用后台模版完成的第一个后台模块,在后台的路由使用和通用逻辑上面,我们会给出一个范例。2 |9 r6 G$ ~8 h5 n" V. s0 ^: V, M
13-1 管理模块简介1 r$ y+ B( V9 r: I6 |+ b
13-2 管理人员的列表和增加页面. i) `4 Q7 u$ U" y$ {, {( Y
13-3 -管理人员的列表和增加逻辑
5 ?2 P. e. O' q4 Y" A. P" |$ B7 u8 q+ A/ ]: Q
第14章 审核模块/ i5 `$ m" g% Q& K0 ^9 c
本章完成后台审核人员对文章的审核功能,虽然是一个后台项目,但是也是一个前后台相关联的模块,我们完成的是先发后审的机制,在laravel中,如何完成对应的文章审核逻辑,前台如何过滤审核未通过的文章,都是这个章节需要讨论的内容。...
5 ?1 T7 V5 U" a8 g14-1 文章审核模块介绍8 k& m7 C1 c' l+ Y/ M' a9 B' D
14-2 文章审核的需求分析
2 D: h! d( p) J, a; z3 q# w14-3 使用全局scope进行软删除模型
' F$ J9 L! h2 U( f2 V9 E14-4 完成文章审核模块页面
% v% Z5 f! P/ c# k5 v7 v14-5 使用withoutGlobalScope来完成文章审核功能- j' P. @+ W8 z( d! @
/ ~& r) }) r- K* k k5 ?, s第15章 权限模块/ b0 k- C3 r1 y. \1 ~; U# K
本章重点在于带领大家完成后台的权限模块,我们同样也是使用laravel的Auth组件,另外完成了一套权限系统,我们会带领大家看下如何在一个项目中拥有两个权限控制系统,并且在路由中控制两个系统。接着,后台的左边栏菜单是根据不同权限,展示不同菜单。这个也是通过权限系统加左边栏的菜单组件来共同完成的。...+ }( d$ C; i3 }( z, w* Y1 U
15-1 权限管理模块基本介绍
6 @* S0 W7 R1 G6 j- n1 I# y15-2 分析用户角色权限模型% s; a! r* `9 T# L" U" s
15-3 创建表和模型1 n; y7 C" l5 X& R* K2 F: t' |( O
15-4 使用hasMany搭建模型关系 试看
. C, s& T" g' Z+ \+ ~( k15-5 搭建路由和页面模版) g: U' S' Q6 V$ m, K
15-6 逻辑实现-用户篇$ ~+ `3 s; G( x: l
15-7 逻辑实现-角色篇+权限篇
( G- `4 G7 x, P15-8 逻辑实现-测试和数据添加5 A; C% F0 |6 y& ^9 |. f
15-9 使用laravel的Gate实现权限管理(上)' V, D4 A1 n* F$ W/ X6 ]" g8 _8 ~5 l
15-10 使用laravel的Gate实现权限管理(下). |5 C) M8 ^! ?2 \
2 o2 w+ r& H( g( H* u: e: ]$ |
第16章 专题管理模块
5 g+ T- C4 \; u \7 C; i! F/ Y本章重点在于带领大家完成后台的专题模块管理。如何对前台的专题模块进行增删改查操作。% Y/ z1 t, x- d0 v
16-1 专题管理模块介绍. q, X$ `6 w2 U% {
16-2 专题管理模块需求分析
; t4 F" x( `, t16-3 Laravel的Resource介绍
7 }8 r$ K' f& k, Y1 ]16-4 使用Resource完成专题路由
1 m% O9 d: x* X+ E: Z/ r' s# O16-5 专题管理模块完成: r5 W; e8 F+ `; x. `5 P
5 v: l" Q* l( x7 X& `+ _
第17章 系统通知模块
( {0 o) E4 M) p" z本章使用laravel的队列来完成系统通知的异步发送。系统通知是群发或者多发功能,我们需要使用一个异步机制,laravel中如何使用数据库来完成异步队列,并且在队列中进行任务。5 t/ P$ g4 y Q) q/ ]; C9 V
17-1 通知管理模块介绍
6 J* r2 h3 O! J" o& u8 R. N17-2 具体需求设计和分析( J2 K+ M& D0 b _7 W1 E
17-3 -创建表和模型" ], K+ ~: m' j# B4 ~* n
17-4 使用resource完成后台页面和逻辑4 }$ @; G. |* r: _0 }* r
17-5 完成前台页面和逻辑& M; [; O7 {. A" M: M& c9 d& X
17-6 Laravel中队列的介绍7 f8 D1 a- k4 _& h( m. L8 l
17-7 使用Laravel的队列实现系统通知
) q6 f: G6 w7 m+ |2 t, s* @- x6 w
+ K( x" r1 c3 u7 X8 f# q w第18章 性能优化& n$ U" I# O7 b6 Z
本章介绍laravel特定的一些性能优化方案。包括使用debugbar来查看页面效率,如何优化sql查询次数,如何使用路由缓存,配置缓存等来优化页面速度。
0 D$ i) `2 r1 P1 `- q, K# Q18-1 性能优化章节介绍7 z5 ^) N2 Q1 F8 v) \7 Y5 L6 S
18-2 使用Laravel自带的优化命令优化
3 r. O6 c2 ^+ Z% o4 d1 R. P18-3 使用debugbar进行问题定位
, F% q- c& A+ L+ u/ i. g- ^18-4 使用预加载进行优化+ Y5 ^6 h1 l& E; A* e- U W) F
18-5 使用DB_listen进行慢sql的查询- |/ r. a* Q: f0 w( m4 h. W' w
7 E, m1 c6 [- L( y+ p1 l
【下载地址】
% `5 d$ t) h+ x3 E% ~& v1 t. n. q
+ ]+ J% [7 {; U" D
! d# O0 q) ^2 _9 ^ |
|