Laravel入门与实战(第2版):构建主流PHP应用开发框架 版权信息
- ISBN:9787121417573
- 条形码:9787121417573 ; 978-7-121-41757-3
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 所属分类:>>
Laravel入门与实战(第2版):构建主流PHP应用开发框架 本书特色
适读人群 :本书适合有经验的PHP或C语言开发人员――特别是对那些没有时间来筛选网上众多培训资源的开发者。1. 本书是Laravel经典作品的重磅升级,内容更全面,技术更前沿。
2. 本书不仅包含Laravel理论知识,还配合大量实践案例进行讲解。
Laravel入门与实战(第2版):构建主流PHP应用开发框架 内容简介
这是一本实用的Laravel 技术指南,第2 版接近涵盖Laravel 5.8 版本的内容。本书对Laravel 框架进行了系统的介绍,包括Laravel 的背景,Laravel开发环境的搭建,路由与控制器,Blade 模板,数据库和Eloquent,前端组件,收集和处理用户数据,Artisan 和Tinker,用户认证和授权,请求、响应和中间件,容器,测试等知识。通过阅读本书,读者可以比较全面地学习并掌握Laravel 开发的相关理论知识。另外,书中涵盖大量实例,有利于读者在学习理论知识的过程中同步进行实践。
Laravel入门与实战(第2版):构建主流PHP应用开发框架 目录
目录
第1 章 为什么使用Laravel................................................... 1
为什么要使用框架 ........................................................................................................ 1
“自己动手做” ........................................................................................................ 1
一致性和灵活性 .................................................................................................... 2
Web 和PHP 框架简史 ................................................................................................... 2
Ruby on Rails ........................................................................................................ 2
PHP 框架的涌入 .................................................................................................... 2
CodeIgniter 的优点与缺点 .................................................................................... 3
Laravel 1、Laravel 2 和Laravel 3 ......................................................................... 3
Laravel 4 ............................................................................................................... 3
Laravel 5 ............................................................................................................... 4
Laravel 有什么特别之处 ............................................................................................... 4
Laravel 的哲学 ...................................................................................................... 4
Laravel 如何让开发者感到快乐 ............................................................................ 5
Laravel 社区 .......................................................................................................... 6
Laravel 是如何工作的 ................................................................................................... 6
使用Laravel 的原因 ...................................................................................................... 9
第2 章 搭建Laravel 的开发环境............................................10
系统要求 ..................................................................................................................... 10
Composer .................................................................................................................... 11
本地开发环境 ............................................................................................................. 11
Laravel Valet ........................................................................................................ 11
Laravel Homestead .............................................................................................. 12
创建一个新的Laravel 项目 ........................................................................................ 12
使用Laravel 安装工具来安装Laravel ................................................................ 13
通过Composer 的create-project 特征来安装Laravel ......................................... 13
Lambo :超强的“Laravel New”指令 ................................................................ 13
Laravel 的目录结构..................................................................................................... 14
文件夹 ................................................................................................................. 14
其他文件 ............................................................................................................. 15
配置 ............................................................................................................................ 16
.env 文件 ............................................................................................................. 18
启动和运行 ................................................................................................................. 20
测试 ............................................................................................................................ 20
小结 ............................................................................................................................ 21
第3 章 路由和控制器.......................................................... 22
对MVC、HTTP 动词和REST 的快速介绍 ................................................................ 22
什么是MVC ....................................................................................................... 22
HTTP 动词 .......................................................................................................... 23
什么是REST ....................................................................................................... 24
路由定义 ..................................................................................................................... 25
路由动词 ............................................................................................................. 26
路由处理 ............................................................................................................. 27
路由参数 ............................................................................................................. 28
路由名称 ............................................................................................................. 29
路由组 ......................................................................................................................... 31
中间件 ................................................................................................................. 32
路径前缀 ............................................................................................................. 34
后备路由 ............................................................................................................. 35
子域名路由.......................................................................................................... 35
命名空间前缀 ...................................................................................................... 36
名称前缀 ............................................................................................................. 36
签名的路由 ................................................................................................................. 37
对路由进行签名 .................................................................................................. 37
修改路由以允许签名链接 ................................................................................... 38
视图 ............................................................................................................................ 39
直接通过Route::view() 返回简单路由 ................................................................ 40
使用视图Composer 在每个视图中共享变量 ...................................................... 40
控制器 ......................................................................................................................... 40
获取用户输入 ...................................................................................................... 43
将依赖注入控制器 .............................................................................................. 44
资源控制器.......................................................................................................... 45
API 资源控制器 .................................................................................................. 46
单一动作控制器 .................................................................................................. 47
路由模型绑定 ............................................................................................................. 47
隐式路由模型绑定 .............................................................................................. 48
自定义路由模型绑定 ........................................................................................... 49
路由缓存 ..................................................................................................................... 49
表单方法欺骗 ............................................................................................................. 50
Laravel 中的HTTP 动词 ..................................................................................... 50
在HTML 表单中进行HTTP 方法欺骗 ............................................................... 50
CSRF 保护 .................................................................................................................. 51
重定向 ......................................................................................................................... 52
redirect()->to() ..................................................................................................... 53
redirect()->route() ................................................................................................ 54
redirect()->back() ................................................................................................ 54
其他重定向方法 .................................................................................................. 54
redirect()->with() ................................................................................................. 55
中止请求 ..................................................................................................................... 57
自定义Response ......................................................................................................... 57
response()->make() .............................................................................................. 57
response()->json() 和->jsonp() ............................................................................ 57
response()->download()、->streamDownload() 和->file() .................................. 58
测试 ............................................................................................................................ 58
小结 ............................................................................................................................ 59
第4 章 Blade 模板............................................................ 60
输出数据 ..................................................................................................................... 61
控制结构 ..................................................................................................................... 61
条件语句 ............................................................................................................. 62
循环语句 ............................................................................................................. 62
模板继承 ..................................................................................................................... 64
用@section/@show 和@yield 定义部分信息 ..................................................... 65
包含视图部分 ...................................................................................................... 67
使用stack ............................................................................................................ 69
使用component 和slot ........................................................................................ 70
视图Composer 和服务注入 ........................................................................................ 72
用视图Composer 将数据绑定到视图 .................................................................. 73
Blade 服务注入 ................................................................................................... 76
自定义Blade 指令 ...................................................................................................... 77
自定义Blade 指令中的参数 ................................................................................ 78
示例:对多租户应用程序使用自定义Blade 指令 .............................................. 78
更简单的if 语句的自定义指令 ........................................................................... 79
测试 ............................................................................................................................ 80
小结 ............................................................................................................................ 81
第5 章 数据库和Eloquent.................................................. 82
配置 ............................................................................................................................ 82
数据库连接.......................................................................................................... 82
其他数据库配置选项 ........................................................................................... 84
定义迁移 ............................................................................................................. 84
运行迁移 ............................................................................................................. 92
填充 ............................................................................................................................ 93
创建填充器.......................................................................................................... 94
模型工厂 ............................................................................................................. 95
查询构造器 ................................................................................................................. 99
DB 外观的基本使用 .......................................................................................... 100
原始SQL 语句 .................................................................................................. 101
查询构造器链 .................................................................................................... 102
事务 ....................................................................................................................111
Eloquent 入门 ............................................................................................................ 112
新建和定义Eloquent 模型 ................................................................................ 113
通过Eloquent 获取数据 .................................................................................... 114
Eloquent 的插入和更新 ..................................................................................... 116
Eloquent 中的删除操作 ..................................................................................... 120
作用域 ............................................................................................................... 122
自定义与访问器、修改器和属性转换器的字段交互 ........................................ 125
Eloquent 集合 .................................................................................................... 129
Eloquent 序列化 ................................................................................................ 131
Eloquent 关系 .................................................................................................... 133
通过子类记录更新父类时间戳 .......................................................................... 146
Eloquent 事件 ............................................................................................................ 148
测试 .......................................................................................................................... 149
小结 .......................................................................................................................... 151
第6 章 前端组件............................................................... 152
Laravel Mix ............................................................................................................... 152
Mix 文件夹结构 ................................................................................................ 154
运行Mix ........................................................................................................... 154
Mix 提供了什么 ................................................................................................ 155
前端预设和认证脚手架............................................................................................. 161
前端预设 ........................................................................................................... 161
认证脚手架........................................................................................................ 162
分页 .......................................................................................................................... 162
分页数据库结果 ................................................................................................ 163
手动创建分页 .................................................................................................... 164
消息包 ....................................................................................................................... 165
命名错误包........................................................................................................ 166
字符串助手、多元化和本地化 ................................................................................. 167
字符串助手和多元化 ......................................................................................... 167
本地化 ............................................................................................................... 168
测试 .......................................................................................................................... 171
测试消息包和错误包 ......................................................................................... 171
翻译和本地化 .................................................................................................... 172
小结 .......................................................................................................................... 172
第7 章 收集和处理用户数据................................................. 173
注入请求对象 ........................................................................................................... 173
$request->all() ................................................................................................... 173
$request->except() 和$request->only() .............................................................. 174
$request->has() .................................................................................................. 175
$request->input() ............................................................................................... 175
$request->method() 和$request->isMethod() .................................................... 176
数组输入 ........................................................................................................... 176
JSON 输入($request->json()) .......................................................................... 176
路由数据 ................................................................................................................... 178
通过Request 实现 ............................................................................................. 178
通过路由参数实现 ............................................................................................ 178
上传的文件 ............................................................................................................... 178
验证 .......................................................................................................................... 181
Request 对象的validate() 方法 .......................................................................... 181
手动验证 ........................................................................................................... 183
自定义规则对象 ................................................................................................ 184
显示验证错误信息 ............................................................................................ 185
表单请求 ................................................................................................................... 185
创建表单请求 .................................................................................................... 186
使用表单请求 .................................................................................................... 187
Eloquent 模型批量赋值 ............................................................................................. 187
{{ 与{!! .................................................................................................................... 189
测试 .......................................................................................................................... 189
小结 .......................................................................................................................... 190
第8 章 Artisan 和Tinker.................................................. 191
Artisan 入门 .............................................................................................................. 191
Artisan 的基本命令 ................................................................................................... 192
选项 ................................................................................................................... 193
组合命令 ........................................................................................................... 193
编写自定义的Artisan 命令 ....................................................................................... 196
示例命令 ........................................................................................................... 198
参数和选项........................................................................................................ 199
使用Input 输入 ................................................................................................. 200
提示 ................................................................................................................... 202
输出 ................................................................................................................... 203
编写基于闭包的命令 ......................................................................................... 205
在普通代码中调用Artisan 命令 ............................................................................... 205
Tinker ........................................................................................................................ 206
Laravel Dump 服务 ................................................................................................... 207
测试 .......................................................................................................................... 208
小结 .......................................................................................................................... 209
第9 章 用户认证和授权...................................................... 210
用户模型和迁移 ........................................................................................................ 210
使用auth() 全局助手和Auth 外观 ............................................................................ 214
认证控制器 ............................................................................................................... 214
RegisterController ............................................................................................. 215
LoginController ................................................................................................. 216
ResetPasswordController ................................................................................... 217
ForgotPasswordController ................................................................................. 217
VerificationController ........................................................................................ 218
Auth::routes() ............................................................................................................ 218
认证脚手架 ............................................................................................................... 219
“记住我” ................................................................................................................... 220
手动认证用户 ........................................................................................................... 221
手动登出一个用户 .................................................................................................... 221
使其他设备上的会话无效 ................................................................................. 222
认证中间件 ............................................................................................................... 222
电子邮件验证 ........................................................................................................... 223
Blade 身份验证指令 .................................................................................................. 224
保护 .......................................................................................................................... 224
修改默认保护 .................................................................................................... 225
在不改变默认值的情况下使用其他保护 ........................................................... 225
添加新的保护 .................................................................................................... 226
请求保护闭包 .................................................................................................... 226
创建自定义用户提供者 ..................................................................................... 226
为非关系数据库自定义用户提供者 .................................................................. 227
认证事件 ................................................................................................................... 228
授权(ACL)和角色 ................................................................................................ 228
定义授权规则 .................................................................................................... 229
Gate 外观(和注入Gate) .................................................................................. 230
Resource Gate .................................................................................................... 230
Authorize 中间件 ............................................................................................... 231
控制器授权........................................................................................................ 231
检查用户实例 .................................................................................................... 233
Blade 检查 ......................................................................................................... 234
拦截检查 ........................................................................................................... 234
政策 ................................................................................................................... 235
测试 .......................................................................................................................... 238
小结 .......................................................................................................................... 240
第10 章 请求、响应和中间件............................................... 241
Laravel 的请求生命周期 ........................................................................................... 241
引导应用 ........................................................................................................... 242
服务提供者........................................................................................................ 242
Request 对象 ............................................................................................................. 244
在Laravel 中获得Request 对象 ........................................................................ 245
获得Request 中的基本信息 .............................................................................. 246
Response 对象 ........................................................................................................... 250
在控制器中创建和使用Response 对象 ............................................................. 250
特殊的响应类型 ................................................................................................ 251
Laravel 和中间件 ...................................................................................................... 257
中间件介绍........................................................................................................ 257
创建自定义中间件 ............................................................................................ 258
绑定中间件........................................................................................................ 260
将参数传递到中间件 ......................................................................................... 262
信任代理 ................................................................................................................... 263
测试 .......................................................................................................................... 264
小结 .......................................................................................................................... 265
第11 章 容器.................................................................. 267
依赖注入简介 ........................................................................................................... 267
Laravel 中的依赖注入 ............................................................................................... 269
全局助手函数app() .................................................................................................. 269
容器是如何装配的 .................................................................................................... 270
将类绑定到容器 ........................................................................................................ 271
绑定到闭包........................................................................................................ 271
绑定单例、别名和实例 ..................................................................................... 272
绑定接口的具体实现 ......................................................................................... 273
绑定上下文........................................................................................................ 274
Laravel 模块中的构造器注入 .................................................................................... 275
方法注入 ................................................................................................................... 275
外观与容器 ............................................................................................................... 277
外观如何运转 .................................................................................................... 277
实时外观 ........................................................................................................... 279
服务提供者 ............................................................................................................... 279
测试 .......................................................................................................................... 280
小结 .......................................................................................................................... 281
第12 章 测试.................................................................. 282
测试基础 ................................................................................................................... 283
测试的命名 ............................................................................................................... 287
测试环境 ................................................................................................................... 288
用于测试的特征 ........................................................................................................ 288
RefreshDatabase ................................................................................................ 289
WithoutMiddleware ........................................................................................... 289
DatabaseMigrations ........................................................................................... 289
DatabaseTransactions ......................................................................................... 289
简单的单元测试 ........................................................................................................ 290
应用测试:它是如何工作的 ..................................................................................... 291
测试用例 ........................................................................................................... 291
HTTP 测试 ................................................................................................................ 292
通过$this->get() 和其他HTTP 方法测试基础页面 .......................................... 292
通过$this->getJson() 测试JSON 接口和其他JSON 格式调用 ......................... 293
针对$response 进行断言 ................................................................................... 293
认证响应 ........................................................................................................... 296
HTTP 测试中的一些其他定制化内容 ............................................................... 297
处理应用测试中的异常 ..................................................................................... 297
数据库测试
展开全部
Laravel入门与实战(第2版):构建主流PHP应用开发框架 作者简介
Matt Stauffer既是一名开发者,也是一位教师。他是Tighten的合伙人兼技术总监,主办过Five-Minute Geek Show和Laravel Podcast。他的博客地址是http://mattstauffer.com/。
韦玮,重庆韬翔网络科技有限公司创始人兼董事,英国阿伯丁大学人工智能专业研究生(一等荣誉学位),计算机图书畅销书作者,业界资深计算机专家讲师。具有多年IT技术实战开发经验,曾做过程序员、技术总监,目前运营一家专注于中大型软件开发与IT技术服务的公司。《精通Python网络爬虫》《Python程序设计基础实战教程》《Python基础实例教程》作者,《Laravel入门与实战》译者。 有明,开源项目Lawoole发起者,Hyperf 核心成员,SF认证讲师,长期关注新兴技术结合微服务化实现,对技术理论体系有所研究。熟知全栈开发、运维相关技术。《Laravel:艺术家成长之路》系列课程讲师,掘金小册《详解 Laravel 源码中优秀的设计模式》作者,技术书《没什么难的:Docker》作者。