内容简介

Laravel入门与实战:构建主流PHP应用开发框架》从基础开始详细地讲解了Laravel开发框架。《Laravel入门与实战:构建主流PHP应用开发框架》对Laravel框架进行了系统的介绍,包括Laravel的背景、Laravel开发环境的搭建、路由与控制器、Blade模板、前端组件、收集和处理用户数据、Artisan和Tinker、数据库和Eloquent、容器、Laravel测试等知识。通过阅读《Laravel入门与实战:构建主流PHP应用开发框架》,读者可以比较全面地学习并掌握Laravel开发的相关理论知识。另外,书中涵盖大量实例,更有利于读者在学习过程中不断实践。

作者简介

MattStauffer,既是一名开发者,也是一位教师。他是TightenCo.和合伙人兼技术总监,主办过TheFive-MinuteGeekShow和LaravelPodcast。博客地址是http://mattstauffer.co/。
韦玮,重庆韬翔网络科技有限公司董事长兼CEO,《精通Python网络爬虫》作者,CSDN特邀IT专家,51CTO学院特约专家讲师,《知道日报》特约作者,国家工信部高级网络营销师,蜻蜓FM**签约主播,国家专利发明人,多年IT从业经验,曾出品发明过多门IT课程并获得大量学员的支持与喜爱。

目录

目录

前言xxiii

第1章 为什么使用Laravel1

为什么要使用框架1

“自己动手做”2

一致性和灵活性2

Web和PHP框架的简史2

RubyonRail2

PHP框架的涌入3

CodeIgniter的优点与缺点3

Laravel1、Laravel2和Laravel33

Laravel44

Laravel54

Laravel有什么特别之处4

Laravel的哲学4

Laravel如何让开发者快乐5

Laravel社区6

它是如何工作的6

为什么使用Laravel9

第2章 搭建Laravel的开发环境11

系统要求11

Composer11

本地开发环境12

LaravelValet12

LaravelHomestead13

创建一个新的Laravel项目17

使用Laravel安装工具来安装Laravel17

通过Composer的create-project来安装Laravel17

Laravel的目录结构18

文件夹18

文件19

配置19

启动和运行20

测试21

本章小结21

第3章 路由和控制器23

第4章 Blade模板55

第5章 前端组件73

第6章 收集和处理用户数据91

第7章 Artisan和Tinker109

第8章 数据库和Eloquent127

第9章 用户认证和授权193

第10章 请求和响应221

第11章 容器243

第12章 测试257

第13章 编写API281

第14章 存储和检索313

第15章 邮件和通知335

第16章 队列,任务,事件,广播及调度程序353

第17章 助手和集合387

词汇表405

前言/序言

译者序

在Web开发方面,相信大家对PHP语言并不会感到陌生。是的,使用PHP语言实现Web应用开发确实非常便捷,正因如此,PHP语言获得了大量Web开发者的忠实拥护,译者也是其中之一。

在开发过程中,如果能使用一款优秀的PHP框架将会事半功倍。目前使用PHP语言开发Web项目通常有三种方案:使用原生PHP代码(不基于框架)开发、基于框架开发以及基于框架并对框架进行二次开发。对大部分公司来说,开发效率这项指标是非常重要的,又因为框架实际上相当于项目的“半成品”,所以大部分公司可能更倾向于选择一款性能优越的PHP框架,基于框架进行具体项目的开发。

目前,可以选择的PHP开发框架有很多,比如Laravel、ThinkPHP、Yii、CakePHP等,这些框架各有千秋,但如果非要让译者在其中选择出一两款自己更喜欢的框架,那么应该是Laravel与ThinkPHP。Laravel框架性能较好,运行速度较快,适合开发中大型项目,在国际范围内都比较流行,但由于Laravel框架是由国外研发的,所以目前可参考文献与资源在国内都比较匮乏。ThinkPHP框架是国内研发的,性能同样也非常好,比较适合开发中小型项目,并且国内的可参考文献与资源相对较多。这两款框架都是非常优秀的PHP开发框架,如果有时间,建议大家对这两款框架进行深入的研究。

这《Laravel入门与实战:构建主流PHP应用开发框架》主要对Laravel框架进行了系统的介绍。包括Laravel背景、Laravel开发环境的搭建、路由与控制器、Blade模板、前端组件、收集和处理用户数据、Artisan和Tinker、数据库和Eloquent、用户认证和授权、请求和响应、容器、Laravel测试、API编写、存储与检索、邮件和通知、任务、队列、事件、广播及调度程序、助手和集合等。上面已经提到,Laravel框架的相关学习资料比较匮乏,因此,衷心希望这《Laravel入门与实战:构建主流PHP应用开发框架》出版后在一定程度上能够弥补这方面的空缺。

有幸得到博文视点编辑孙奇俏老师的邀请,并在孙老师的监督下完成了《Laravel入门与实战:构建主流PHP应用开发框架》的翻译与审校工作。但由于我公司事务繁忙,精力有限,所以邀请了我的学生黄梦颖与俞渺共同完成了《Laravel入门与实战:构建主流PHP应用开发框架》的翻译工作。黄梦颖与俞渺都是非常优秀的高材生,都有过国外留学经历,黄梦颖同学现已获得了新加坡国立大学硕士学位,俞渺同学现已获得墨尔本大学硕士学位。

翻译过程中,我负责正文第1~6章翻译以及《Laravel入门与实战:构建主流PHP应用开发框架》的审校工作,黄梦颖负责正文第7~10章、第13和14章、前言、封底、词汇表、作者简介、封面简介等的翻译工作,俞渺负责正文第11和12章、第15~17章的翻译工作。在此由衷感谢两位同学的艰苦付出,若读者在阅读过程中发现翻译文风略有不同,还请理解。

Laravel入门与实战:构建主流PHP应用开发框架》关于Laravel框架相关知识的介绍非常具体,如果你希望系统地学习并掌握Laravel框架,那么《Laravel入门与实战:构建主流PHP应用开发框架》将非常适合你。当然,由于Laravel属于PHP语言众多框架中的一种,所以,大家在阅读《Laravel入门与实战:构建主流PHP应用开发框架》之前最好先学习一些关于PHP的基础知识,这样会更容易理解《Laravel入门与实战:构建主流PHP应用开发框架》的内容。

再次感谢孙奇俏老师的邀请,感谢《Laravel入门与实战:构建主流PHP应用开发框架》编辑杨嘉媛,孙老师与杨编辑在《Laravel入门与实战:构建主流PHP应用开发框架》的审稿与编加过程中付出了大量的精力与心血。感谢黄梦颖与俞渺对翻译做出的巨大贡献。感谢《Laravel入门与实战:构建主流PHP应用开发框架》原作者MattStauffer在写作过程中付出的巨大努力。感谢所有一直支持我的朋友们。

感谢所有PHP的忠实拥护者与Laravel爱好者,谢谢你们的支持!

韦玮

2018年1月于上海

前言

一个很常见的问题是,应该如何学习Laravel?尽管已经写了很多年的PHP程序,但是我不想闭门造车,我想更好地学习Rails的强大特性,也想学习其他先进的Web框架。

Rails有一个非常活跃的社区,完美结合了默认配置及其灵活性,并且具有RubyGems的能力来提高预包装的常用代码。

我曾经也很犹豫是否要继续使用PHP,直到知道了Laravel,我才坚定信心。Laravel具备Rails所有的特性,但它不仅仅是Rails的一个副本,更是一个全新的Web框架。

Laravel提供了非常完善的文档、开放的交流社区,还继承了许多现有的语言和框架。当我在博客和会议中分享Laravel的学习经验时,我已经使用Laravel开发了几十个应用程序和项目,并且可以在线或者面对面与成千上万名Laravel开发者进行交流。我的工具箱中已经有很多种开发工具了,但是当打开命令行终端,输入laravelnewproject时,我还是会感到非常激动。

关于《Laravel入门与实战:构建主流PHP应用开发框架

这并不是第一本关于Laravel的书,也不会是最后一本。我不打算让它成为一本涵盖每一行代码或实现模式的书。我也并不希望它一定要与现在最新版本的Laravel保持一致。

相反,我编写《Laravel入门与实战:构建主流PHP应用开发框架》的主要目的是提供一个高阶的概述和具体的例子,帮助开发者更快地学习Laravel。我希望能帮助读者理解Laravel背后的基本概念,而不是单纯讲解文档。

Laravel是一个强大且灵活的PHP框架。它拥有发展迅速的社区、丰富的开发工具,这些特性都让Laravel越来越受欢迎。《Laravel入门与实战:构建主流PHP应用开发框架》旨在帮助已经知道如何开发网站和应用程序的开发者学习如何在Laravel中进行开发。

Laravel的官方文档非常清晰明了,如果读者对一些特定的内容感兴趣,但《Laravel入门与实战:构建主流PHP应用开发框架》中又没有进行深入讲解,那么建议读者参考Laravel的在线文档进行深入学习。

Laravel入门与实战:构建主流PHP应用开发框架》不仅对知识点进行概述,也提供了相应的实例。在学习完《Laravel入门与实战:构建主流PHP应用开发框架》后,相信读者便可以使用Laravel从头开始实现一个完整的应用程序了。希望《Laravel入门与实战:构建主流PHP应用开发框架》能激发大家动手操作的兴趣。

目标读者

读者要具备基本的面向对象编程基础,了解PHP(或者至少是C语言的一般语法),以及模型-视图-控制器(MVC)开发模式和模板的基本概念。如果从来没有开发过网站,那么可能会觉得《Laravel入门与实战:构建主流PHP应用开发框架》的内容比较难懂。但是只要有一定的编程基础,就不需要在阅读《Laravel入门与实战:构建主流PHP应用开发框架》之前了解Laravel——我们会在《Laravel入门与实战:构建主流PHP应用开发框架》中从“Hello,world!”开始,覆盖所有需要了解的内容。

Laravel入门与实战:构建主流PHP应用开发框架》结构

Laravel入门与实战:构建主流PHP应用开发框架》按照时间顺序编写:如果正在使用Laravel构建第一个Web应用程序,那么前面的章节将介绍开始时需要使用的基本组件,后面的章节将更深入地介绍知识点及对应的具体实例。

Laravel入门与实战:构建主流PHP应用开发框架》的每一部分都可以单独阅读,但是也力图使章节之间的联系更加紧密,以便刚接触框架的读者能够从头到尾顺畅地进行阅读和学习。

每章节的最后都包括“测试”和“本章小结(TL;DR)”,TL;DR表示“长话短说”。这两部分将展示如何测试对应章节中讲过的方法,并对所涵盖的内容进行高阶概述。

Laravel入门与实战:构建主流PHP应用开发框架》基于Laravel5.3版本,但是因为Laravel5.1是最新的LTS版本,所以Laravel5.2或Laravel5.3中的新功能将被标记出来。


其他推荐