零、前言

PHP,一种自由和开源的编程语言,正在继续复兴,Laravel 走在了前列。事实证明,Laravel 5 是新手和专业程序员最有用的框架。遵循现代 PHP 面向对象的最佳实践,缩短上市时间,构建健壮的 web 和 API 驱动的移动应用,这些应用可以自动测试和部署。

您将学习如何使用 Laravel 5 PHP 框架快速开发软件应用。

这本书涵盖了什么

第一章用 phpspec 设计做对了,讲了如何为 phpspec 配置 Laravel 5 进行现代单元测试,使用 phpspec 设计类,进行单元和功能测试。

第 2 章自动化测试–迁移和播种您的数据库,涵盖了数据库迁移、迁移背后的机制以及如何为测试创建种子。

第 3 章构建服务、命令和事件,讲述了模型-视图-控制器以及如何演变成服务、命令和事件来分离代码和实践关注点的分离。

第 4 章创建 RESTful API,带您完成 RESTful API 的创建:基本的 CRUD 操作(创建、读取、更新和删除),以及讨论一些最佳实践和超媒体控制(HATEOAS)。

第 5 章使用表单生成器,带您进入事物的 web 界面端,并向您展示如何利用 Laravel 5 的一些最新功能来创建 web 表单。反向路由也将在这里讨论。

第六章用注释驯服复杂性,重点是注释。当应用变得越来越复杂时,routes.php文件很容易变得混乱。使用控制器内部的注释,代码可读性大大提高;然而,除了优点之外,还有一些缺点。

第 7 章使用中间件过滤请求,向您展示了如何创建可重用的过滤器,这些过滤器可以在控制器之前或之后调用。

第八章用雄辩的 ORM 查询数据库,帮助你学习如何使用 ORM 来降低编码错误的概率,增加安全性和减少 SQL 注入的概率,也学习如何处理雄辩的 ORM 的极限。

第 9 章扩展 Laravel 讲述了扩展应用以将其移入基于云的体系结构。讨论读/写主/从配置,并指导读者完成配置。

第十章炼丹炼丹验药介绍 Elixirs。酏是基于 glave 的,它是一个任务运行器,是一系列构建脚本,可以自动执行 Laravel 软件开发工作流中的常见任务。

这本书你需要什么

我们需要以下软件:

  • Apache/ngix
  • PHP 5.4 或更高版本
  • MySQL 或类似的
  • 设计者
  • phpspec
  • Node.js
  • 国家预防机制

这本书是给谁的

如果你是一个有经验的新手或者是一个有能力的 PHP 程序员,对现代 PHP 的概念有基本的了解(至少 5.4 版),那么这本书是你的理想之选。

需要基本的面向对象编程和数据库知识。你应该已经知道如何使用 Laravel,或者至少已经尝试过这个框架。

惯例

在这本书里,你会发现许多区分不同种类信息的文本样式。以下是这些风格的一些例子和对它们的意义的解释。

文本中的码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、伪 URL、用户输入和 Twitter 句柄如下所示:“新的artisan命令运行如下”

代码块设置如下:

protected function schedule(Schedule $schedule)
    {
        $schedule->command('inspire')
             ->hourly();
        $schedule->command('manage:waitinglist')
            ->everyFiveMinutes();

    }

任何命令行输入或输出都编写如下:

$ php artisan schedule:run

新名词重要词语以粗体显示。您在屏幕上看到的单词,例如菜单或对话框中的单词,出现在文本中,如下所示:“现在出现了迁移表,如下图所示。”

警告或重要提示会出现在这样的框中。

类型

提示和技巧是这样出现的。

读者反馈

我们随时欢迎读者的反馈。让我们知道你对这本书的看法——你喜欢或不喜欢什么。读者反馈对我们来说很重要,因为它有助于我们开发出你真正能从中获益的标题。

要给我们发送一般反馈,只需发送电子邮件<[feedback@packtpub.com](mailto:feedback@packtpub.com)>,并在您的邮件主题中提及书名。

如果你对某个主题有专业知识,并且对写作或投稿感兴趣,请参见我们位于www.packtpub.com/authors的作者指南。

客户支持

现在,您已经自豪地拥有了一本书,我们有许多东西可以帮助您从购买中获得最大收益。

下载示例代码

您可以从您在http://www.packtpub.com的账户下载您购买的所有 Packt Publishing 书籍的示例代码文件。如果您在其他地方购买了这本书,您可以访问http://www.packtpub.com/support并注册,以便将文件直接通过电子邮件发送给您。

勘误表

尽管我们尽了最大努力来确保我们内容的准确性,但错误还是会发生。如果你在我们的某本书里发现了错误——可能是文本或代码中的错误——如果你能向我们报告,我们将不胜感激。通过这样做,你可以让其他读者免受挫折,并帮助我们改进这本书的后续版本。如果您发现任何勘误表,请访问http://www.packtpub.com/submit-errata,选择您的书籍,点击勘误表提交表链接,并输入您的勘误表的详细信息。一旦您的勘误表得到验证,您的提交将被接受,勘误表将上传到我们的网站或添加到该标题勘误表部分下的任何现有勘误表列表中。

要查看之前提交的勘误表,请前往https://www.packtpub.com/books/content/support并在搜索栏中输入图书名称。所需信息将出现在勘误表部分。

盗版

互联网上版权材料的盗版是所有媒体的一个持续问题。在 Packt,我们非常重视版权和许可证的保护。如果您在互联网上遇到任何形式的我们作品的非法拷贝,请立即向我们提供位置地址或网站名称,以便我们寻求补救。

请通过<[copyright@packtpub.com](mailto:copyright@packtpub.com)>联系我们,获取疑似盗版资料的链接。

我们感谢您在保护我们的作者方面的帮助,以及我们为您带来有价值内容的能力。

问题

如果您对本书的任何方面有问题,可以在<[questions@packtpub.com](mailto:questions@packtpub.com)>联系我们,我们将尽最大努力解决问题。