零、前言

Laravel 已经成为有史以来发展最快的 PHP 框架之一。凭借其富有表现力的语法和优秀的文档,很容易在很短的时间内启动并运行一个功能齐全的 web 应用。此外,现代 PHP 特性的使用使得 Laravel 的第 4 版非常容易根据我们自己的需求进行定制,并且如果需要的话,还使我们能够轻松创建一个高度复杂的网站。这是简单和高级的完美结合。

这本书只涵盖了拉弗尔能力的一小部分。更多地把它当作一个起点,用代码例子让事情运转起来。然后对它们进行定制、添加或组合,以创建自己的应用。可能性是无穷的。

Laravel 最棒的地方之一就是社区。如果你曾经陷入一个问题,做谷歌搜索没有帮助,总有人愿意帮忙。你可以在 IRC(自由节点上的#laravel)或论坛(T2)上找到有用的社区成员,或者你可以在推特上联系许多 laravel 用户。

快乐的幼虫!

这本书涵盖了什么

第 1 章设置和安装 Laravel ,介绍了启动和运行 Laravel 的各种方法。

第二章使用表单和采集输入,展示了 Laravel 中表单的多种使用方式。它涵盖了使用 Laravel 的表单类以及一些基本的验证。

第 3 章验证您的应用,演示如何验证用户。我们将看到如何使用 OAuth、OpenId 和各种社交网络进行身份验证。

第四章数据的存储和使用,涵盖了数据的一切,包括如何使用 MySQL 数据库以外的数据源。

第五章使用控制器和路由获取 URL 和 API,介绍了 Laravel 中的各种路由方法以及如何制作一个基本的 API。

第 6 章展示你的观点,演示了观点在 Laravel 中是如何工作的。我们还将结合小枝模板系统和推特引导。

第 7 章创建和使用 Composer 包,解释了如何在我们的应用中使用包以及如何创建我们自己的包。

第 8 章使用 Ajax 和 jQuery ,提供了如何在 Laravel 中使用 jQuery 以及如何进行异步请求的不同示例。

第 9 章有效使用安全和会话,涵盖了关于保护我们的应用以及如何使用会话和 cookies 的主题。

第 10 章测试和调试你的应用,展示了如何用 PHPUnit 和 Codeception 在我们的应用中加入单元测试。

第 11 章将第三方服务部署和集成到您的应用中,介绍了许多第三方服务以及我们如何将它们包含在我们的应用中。

这本书你需要什么

这本书基本上需要一个工作的 LAMP 栈(Linux、Apache、MySQL 和 PHP)。web 服务器是 Apache 2,可以在http://httpd.apache.org找到。推荐的数据库服务器是 MySQL 5.6,可以从http://dev.mysql.com/downloads/mysql下载。推荐的最低 PHP 版本是 5.4,可以在http://php.net/downloads.php找到。

对于一体化解决方案,Windows 也有 WAMP 服务器(http://www.wampserver.com/en)或 xammap(http://www.apachefriends.org/en/xampp.html)或 Mac OS X 有 MAMP(http://www.mamp.info/en/mamp-pro)

这本书是给谁的

这本书是为具有 PHP 中级知识的人设计的。了解另一个 PHP 框架或 Laravel 版本 3 的基础知识也很有帮助。一些 MVC 结构和面向对象编程的知识也是有益的。

惯例

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

文本中的码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、伪 URL、用户输入、Twitter 句柄,如下所示:“然后,我们使用artisan命令为我们生成一个新的密钥,它会自动保存在正确的文件中”。

代码块设置如下:

Route::get('accounts', function()
{
  $accounts = Account::all();
  return View::make('accounts')->with('accounts', $accounts);
});

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

  php artisan key:generate

新名词重要词语以粗体显示。您在屏幕上看到的单词,例如菜单或对话框中的单词,会出现在如下文本中:“登录到 Pagodabox 后,单击新应用选项卡”。

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

类型

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

读者反馈

我们随时欢迎读者的反馈。让我们知道你对这本书的看法——你喜欢或可能不喜欢什么。读者反馈对我们开发您真正能从中获得最大收益的标题非常重要。

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

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

客户支持

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

下载示例代码

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

勘误表

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

盗版

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

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

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

问题

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