为你推荐
内容简介
O'Reilly Media,Inc.介绍
其 他
译者序
前言
第1版致谢
第1章 为什么使用Laravel
为什么要使用框架
“自己动手做”
一致性和灵活性
Web和PHP框架简史
Ruby on Rails
PHP框架的涌入
Codelgniter的优点与缺点
Laravel 1、Laravel 2和Laravel 3
Laravel 4
Laravel 5
Laravel有什么特别之处
Laravel的哲学
Laravel如何让开发者感到快乐
Laravel社区
Laravel是如何工作的
使用Laravel的原因
第2章 搭建Laravel的开发环境
系统要求
Composer
本地开发环境
Laravel Valet
Laravel Homestead
创建一个新的Laravel项目
使用Laravel安装工具来安装Laravel
通过Composer的create-project特征来安装Laravel
Lambo:超强的“Laravel New”指令
Laravel的目录结构
文件夹
其他文件
配置
.env文件
启动和运行
测试
小结
第3章 路由和控制器
对MVC、HTTP动词和REST的快速介绍
什么是MVC
HTTP动词
什么是REST
路由定义
路由动词
路由处理
路由参数
路由名称
路由组
中间件
路径前缀
后备路由
命名空间前缀
名称前缀
签名的路由
对路由进行签名
修改路由以允许签名链接
视图
直接通过Route::view()返回简单路由
使用视图Composer在每个视图中共享变量
控制器
获取用户输入
将依赖注入控制器
资源控制器
APl资源控制器
单一动作控制器
路由模型绑定
隐式路由模型绑定
自定义路由模型绑定
路由缓存
表单方法欺骗
Laravel中的HTTP动词
在HTML表单中进行HTTP方法欺骗
CSRF保护
重定向
redirect()->to()
redirect()->route()
redirect()->back()
其他重定向方法
redirect()->with()
中止请求
自定义Response
response()->make()
response()->json()和->jsonp()
response()->download()、->streamDownload()和->file()
测试
小结
第4章 Blade模板
输出数据
控制结构
条件语句
循环语句
模板继承
用@section/@show和@yield定义部分信息
包含视图部分
使用stack
使用component和slot
视图Composer和服务注入
用视图Composer将数据绑定到视图
Blade服务注入
自定义Blade指令
自定义Blade指令中的参数
示例:对多租户应用程序使用自定义Blade指令
更简单的if语句的自定义指令
测试
小结
第5章 数据库和Eloquent
配置
数据库连接
其他数据库配置选项
定义迁移
运行迁移
填充
创建填充器
模型工厂
查询构造器
DB外观的基本使用
原始SQL语句
查询构造器链
事务
Eloquent入门
新建和定义Eloquent模型
通过Eloquent获取数据
Eloquent的插入和更新
Eloquent中的删除操作
作用域
自定义与访问器、修改器和属性转换器的字段交互
Eloquent集合
Eloquent序列化
Eloquent关系
通过子类记录更新父类时间戳
Eloquent事件
测试
小结
第6章 前端组件
Laravel Mix
Mix文件夹结构
运行Mix
Mix提供了什么
前端预设和认证脚手架
前端预设
认证脚手架
分页
分页数据库结果
手动创建分页
消息包
命名错误包
字符串助手、多元化和本地化
字符串助手和多元化
本地化
测试
测试消息包和错误包
翻译和本地化
小结
第7章 收集和处理用户数据
注入请求对象
$request->all()
$request->except()和$request->only()
$request->has()
$request->input()
$request->method()和$request->isMethod()
数组输入
JSON输入($request->json())
路由数据
通过Request实现
通过路由参数实现
上传的文件
验证
Request对象的validate()方法
手动验证
自定义规则对象
显示验证错误信息
表单请求
创建表单请求
使用表单请求
Eloquent模型批量赋值
{{与{!!
测试
小结
第8章 Artisan和Tinker
Artisan入门
Artisan的基本命令
选项
组合命令
编写自定义的Artisan命令
示例命令
参数和选项
使用lnput输入
提示
输出
编写基于闭包的命令
在普通代码中调用Artisan命令
Tinker
Laravel Dump服务
测试
小结
第9章 用户认证和授权
用户模型和迁移
使用auth()全局助手和Auth外观
认证控制器
RegisterController
LoginController
ResetPasswordController
ForgotPasswordController
VerificationController
Auth::routes()
认证脚手架
“记住我”
手动认证用户
手动登出一个用户
使其他设备上的会话无效
认证中间件
电子邮件验证
Blade身份验证指令
保护
修改默认保护
在不改变默认值的情况下使用其他保护
添加新的保护
请求保护闭包
创建自定义用户提供者
为非关系数据库自定义用户提供者
认证事件
授权(ACL)和角色
定义授权规则
Gate外观(和注入Gate)
Resource Gate
Authorize中间件
控制器授权
检查用户实例
Blade检查
拦截检查
政策
测试
小结
第10章 请求、响应和中间件
Laravel的请求生命周期
引导应用
服务提供者
Request对象
在Laravel中获得Request对象
获得Request中的基本信息
Response对象
在控制器中创建和使用Response对象
特殊的响应类型
Laravel和中间件
中间件介绍
创建自定义中间件
绑定中间件
将参数传递到中间件
信任代理
测试
小结
第11章 容器
依赖注入简介
Laravel中的依赖注入
全局助手函数app()
容器是如何装配的
将类绑定到容器
绑定到闭包
绑定单例、别名和实例
绑定接口的具体实现
绑定上下文
Laravel模块中的构造器注入
方法注入
外观与容器
外观如何运转
实时外观
服务提供者
测试
小结
第12章 测试
测试基础
测试的命名
测试环境
用于测试的特征
RefreshDatabase
WithoutMiddleware
DatabaseMigrations
DatabaseTransactions
简单的单元测试
应用测试:它是如何工作的
测试用例
HTTP测试
通过$this->get()和其他HTTP方法测试基础页面
通过$this->getJson()测试JSON接口和其他JSON格式调用
针对$response进行断言
认证响应
HTTP测试中的一些其他定制化内容
处理应用测试中的异常
数据库测试
在测试中使用模型工厂
测试中的数据填充
测试其他Laravel系统
事件的伪造
总线和队列的伪造
邮件的伪造
通知的伪造
存储的伪造
模拟
模拟简介
Mockery简介
伪造其他外观
测试Artisan命令
针对Artisan进行断言的语法
浏览器测试
选择测试工具
通过Dusk进行测试
小结
第13章 编写API
类REST的JSON APl基础
组织控制器和返回JSON
读取和发送头
在Laravel中发送响应头
在Laravel中读取请求头
Eloquent分页
排序和过滤
对APl结果进行排序
对APl结果进行过滤
转换结果
编写转换器
通过自定义转换器处理嵌套和关系
APl资源
创建资源类
资源集合
嵌套关系
在APl资源中使用分页
有条件地输出属性
对APl资源的深度定制
APl认证与Laravel Passport
OAuth 2.0简介
安装Passport
Passport的APl
Passport可用的授权方式
使用Passport APl和Vue组件管理客户端和token
Passport的作用范围
部署Passport
APl token认证机制
定制404响应
触发后备路由
测试
测试Passport
小结
第14章 存储和读取
本地和云端文件管理器
文件访问配置
使用Storage外观
添加其他Flysystem提供者
基础的文件上传和操作
简单文件下载
Session
访问Session
在Session实例中可用的方法
临时Session存储
缓存
访问缓存
缓存实例中的可用方法
cookie
Laravel中的cookie
访问cookie的工具
日志
何时、因何使用日志
记录日志
日志通道
全文搜索与Laravel Scout
安装Scout
使模型可被索引
在索引中搜索
队列和Scout
实现无索引操作
根据条件索引模型
在代码里触发索引
通过命令触发索引
测试
文件存储
Session
缓存
cookie
日志
Scout
小结
第15章 邮件和通知
邮件
“经典”的邮件
“mailable”的基础使用方法
邮件模板
可在build()中使用的方法
附件和行内图片
Markdown mailable
将mailable渲染到浏览器
队列
本地开发
通知
定义notifiable中的via()方法
发送通知
通知队列
开箱即用的通知类型
测试
邮件
通知
小结
第16章 队列、任务、事件、广播和调度器
队列
为什么使用队列
基础队列配置
队列任务
运行队列工作者
处理错误
控制队列
其他基于队列的功能
Laravel Horizon
事件
发起事件
监听事件
通过WebSocket广播事件和Laravel Echo
配置和安装
广播事件
接收消息
高级广播工具
Laravel Echo(JavaScript部分)
调度器
可用的任务类型
支持的调度时间点
定义时区和调度命令
阻塞和重叠
处理任务输出
任务钩子
测试
小结
第17章 助手函数和集合
助手函数
数组
字符串
应用路径
URL
杂项
集合
基础
一些方法
小结
第18章 Laravel生态
本书中提到过的工具
Valet
Homestead
Laravel lnstaller
Mix
Dusk
Passport
Horizon
Echo
本书中未提及的工具
Forge
Envoyer
Cashier
Socialite
Nova
Spark
Lumen
Envoy
Telescope
其他资源
词汇表
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜