Laravel 从入门到精通系列教程

转载;https://laravelacademy.org/laravel-tutorial-5_7

适用于 Laravel 5.5、5.6、5.7 版本,本系列教程将围绕一个 LTS 版本,然后采取增量更新方式,随着 Laravel 版本的升级不断进行更新,直到 Laravel 框架不再维护。比如这个教程是在 Laravel 5.5 教程的基础上,涵盖 5.6、5.7 版本的功能。

有人会问这个教程和官方文档有什么区别,文档相对晦涩,很多地方会让新手云里雾里,且各章节相互独立、松散,你可以将本系列教程看作一本针对 Laravel 的、开放式的、持续更新的、以实例驱动的、深入浅出的非官方实战指南。

本系列教程源码存放在 Github 上:https://github.com/nonfu/laravel-tutorial-code

更新频率:为保证教程质量,每周一、三、五更新。

一、预备篇

PHP 知识储备

  • Composer
  • 命名空间
  • Trait 
  • 闭包和匿名函数

搭建开发环境

  • 基于 Vagrant + Virtual Box 构建本地开发环境:Homestead(适用于全平台)(Windows 平台安装还可以参考这篇教程)
  • 基于 Docker 构建本地开发环境:Laradock(适用于全平台)
  • 适用于 Mac 的轻量级开发环境:Laravel Valet
  • 适用于 Windows 的轻量级开发环境:Laragon
  • 创建并运行一个新的 Laravel 项目

二、基础篇

路由&控制器

  • 路由入门:路由定义、参数传递及路由命名
  • 路由分组:中间件、路由前缀、子域名及命名空间
  • 控制器:MVC模式、控制器编写、依赖注入、资源控制器
  • 路由进阶:模型绑定、兜底路由、频率限制和路由缓存
  • 表单请求方法伪造 & 跨站请求伪造(CSRF)攻击保护

视图&Blade 模板

  • 视图入门:基本使用与数据传递
  • Blade 入门篇:数据渲染 & 控制结构
  • Blade 进阶篇:模板继承 & 组件引入
  • Blade 高级篇:View Composer & 自定义指令

前端入门

  • 在 Laravel 项目中使用 Bootstrap 框架
  • 在 Laravel 中编写 Sass 入门教程
  • 在 Laravel 中编写第一个 Vue 组件
  • 通过 Laravel Mix 编译前端资源

处理用户请求

  • 通过 Request 对象实例获取用户请求数据
  • 通过 Laravel + Vue 组件实现文件异步上传
  • 在 Laravel 控制器中进行表单请求验证
  • 在单独的表单请求类中实现字段验证逻辑
  • 通过匿名函数和验证规则类自定义字段验证规则

Artisan & Tinker

  • 编写第一个 Artisan 命令
  • 编写高级的 Artisan 命令
  • 通过 Tinker 实现 Laravel 命令行交互式 Shell

数据库和 Eloquent

  • 连接配置和读写分离
  • 通过迁移创建数据表
  • 通过填充器快速填充数据
  • 查询构建器入门:数据库增删改查
  • 查询构建器进阶:构建复杂的查询语句
  • Eloquent 模型入门:实现增删改查操作
  • Eloquent 模型进阶:批量赋值与软删除
  • Eloquent 模型进阶:访问器与修改器
  • Eloquent 模型进阶:查询作用域(全局、局部、动态)
  • Eloquent 模型进阶:模型事件及监听方式
  • Eloquent 模型进阶:关联关系(上)
  • Eloquent 模型进阶:关联关系(中)
  • Eloquent 模型进阶:关联关系(下)
  • 结合 Bootstrap + Vue 组件实现异步分页

三、进阶篇

用户认证与授权

  • 通过内置脚手架快速实现用户认证
  • 用户登录注册流程及多字段登录实现
  • 基于多表的用户认证功能实现(前后台用户)
  • 通过 Socialite 基于社交网络账号实现用户登录认证
  • 不使用 Passport 实现基于 Token 的简单 API 认证
  • 通过 Passport 实现 API 请求认证:单页面应用篇(Cookie授权令牌)
  • 通过 Passport 实现 API 请求认证:移动端应用篇(密码授权令牌)
  • 通过 Passport 实现 API 请求认证:第三方应用篇(授权码获取令牌)
  • 通过 Passport 实现 API 请求认证:开放平台篇(客户端凭证令牌)
  • 通过 Passport 实现 API 请求认证:沙箱测试篇(私人访问令牌)
  • 通过 Passport 实现 API 请求认证:隐式授权令牌
  • 通过 Passport 实现 API 请求认证:令牌作用域详解
  • 基于 Laravel 框架内置脚手架快速实现邮箱验证功能
  • 通过监听用户注册登录、邮箱验证事件实现简单的积分功能
  • 基于 Cookie 实现基于 Session 的单点登录
  • 基于 CAS 实现通用的单点登录解决方案(一):CAS 原理及服务端搭建
  • 基于 CAS 实现通用的单点登录解决方案(二):CAS 客户端搭建及单点登录测试
  • 基于 CAS 实现通用的单点登录解决方案(三):CAS 单点登录统一退出实现
  • 通过系统自带的授权机制实现简单的用户权限管理
  • 通过 Entrust 扩展包实现基于 RBAC 的用户权限管理
  • 通过 Permission 扩展包实现基于 RBAC 的用户权限管理

请求与响应

  • Laravel 底层是如何处理 HTTP 请求的
  • 请求类 Request 剖析及其使用介绍
  • 响应类 Response 剖析及其使用介绍
  • Laravel 中间件底层实现原理剖析
  • Laravel 路由底层实现原理剖析
  • Laravel 异常报告与渲染底层逻辑

服务容器

  • 依赖注入
  • 绑定类到容器
  • 门面与容器
  • 服务提供者

测试

  • PHPUnit
  • 测试入门
  • HTTP测试
  • 浏览器测试
  • 数据库测试
  • 模拟

编写 API

  • RESTful
  • 控制器组织
  • 读取&发送头信息
  • Eloquent 分页
  • 排序&过滤
  • API Resource
  • API 认证实现

存储与搜索

  • 本地存储
  • 云存储
  • Session
  • Cookie
  • 通过 Laravel Scout 进行全文搜索

邮件和通知

  • 邮件
  • 通知

队列、广播、事件、任务调度

  • 队列
  • 事件
  • 广播
  • 任务调度

辅助函数&集合

  • 辅助函数
  • 集合

四、高性能 Laravel

Swoole 篇

  • 安装及入门
  • 基于Swoole构建高性能 HTTP 服务器
  • 基于Swoole构建高性能 WebSocket 服务器
  • 基于Swoole实现异步事件监听
  • 基于Swoole实现异步队列任务
  • 基于Swoole实现毫秒级任务调度
  • 基于Swoole实现MySQL连接池
  • 基于Swoole实现Redis连接池

五、实战篇

  • 入门项目:博客应用(含上线流程,已完成)
  • 入门项目:微信小程序应用(更新中)
  • 进阶项目:前后端分离应用(已完成)
  • 实战项目:电商项目(筹备中)
  • 实战项目:直播项目(筹备中)

六、附录篇

用户投稿

Laravel 深入核心系列教程:

  • 依赖注入,控制翻转,反射各个概念的理解和使用
  • 如何实现Ioc容器和服务提供者是什么概念
  • Facades外观模式背后实现原理
  • Contracts契约之面向接口编程
  • 中间件,管道之面向切面编程
  • Laravel生命周期
  • Laravel事件之观察者模式
  • 新特性trait在Laravel中的应用
  • 为什么laravel没有规划models目录?
  • Eloquent ORM中的方法find方法的实现流程
  • 如果开发Laravel扩展包和发布到composer
  • Laravel与前端最佳实践
  • 基于JWT的api认证
  • 负载均衡,分布式,集群的理解,多台服务器代码如何同步
  • 基于教程实现的一个简单网站实例

相关资源

  • 离线文档下载(待更新完成后提供)
  • Github 项目:教程、代码

你可能感兴趣的:(Laravel 从入门到精通系列教程)