这是一本专注于特定编程语言的特定技术(框架)的专业书籍。如果有人只学习一个框架,并希望跳出该框架的限制,学习新知识并与已学的框架进行比较,这本书可能是一个不错的选择。然而,Zend Framework 并不是 PHP 世界中最受欢迎的开发工具,因此我建议使用 Laravel 或 Symfony。
这本书自称是为初学者提供的框架逐步指南。全书共10章,每章都是前一章的延续。
开始使用 Zend Framework
章节标题本身就说明了一切。介绍了什么是 Zend Framework,它的特点是什么。如何进行安装、配置、连接数据库(顺便说一下,这里使用 phpMyAdmin 作为数据库操作的示例,因此你不会在这里看到任何迁移)。在章节末尾有总结和几个复习问题。这两者将在后续章节中继续出现。
使用 Zend Framework 创建第一个应用程序
简要介绍了 Git 和 Composer。继续配置 Web 服务器,这里使用的是 Apache。经过一些操作后,我们看到欢迎信息——项目的主页。
接下来开始介绍框架的模块化概念,分析文件夹结构。然后安装一个模块模板,并将其修改为“Users”实体。分析了控制台程序 ZFTool,描述了 MVC 模式,分析了模块的文件夹结构。讨论了视图文件的创建、向控制器添加代码、模块配置。提供了添加新路由的示例——在我看来,这种方式非常不方便,整个配置过程也是如此。
创建通信应用程序
讨论了表单处理、验证过程以及与数据库交互的类。顺便说一下,数组示例仍然使用 array() 而不是 [],而且 PHP 的版本是第五版。最终创建了数据库表和相应的模型。接下来介绍了使用框架内置功能进行授权的示例。
数据管理和文档共享
这里介绍了 Zend Framework 2 的服务管理器,它实际上实现了服务定位器模式。使用服务管理器对代码进行了重构。如果在上一章中,数据库操作仅限于插入记录(用户注册),那么在这里则是完整的 CRUD 过程。为了方便实现这些操作,框架使用了 TableGateway 类,它实现了 TableGatewayInterface 接口。本章最后讨论了如何使用框架内置机制处理文件。
聊天和电子邮件
在本章中,作者创建了一个具有简单群聊和电子邮件功能的组件。对视图文件、JS 代码和 CSS 代码给予了相当的关注,介绍了项目中的一些辅助函数。使用 jQuery 作为 JS 代码。在后端,当然也分析了从创建接收数据的路由,到处理数据并写入数据库的整个过程。在章节末尾,讨论了如何在 Zend 中处理邮件发送,以及如何处理事件(通过 Zend\EventManager 类)。
多媒体共享
本章介绍了如何与第三方服务(如 Google Photos、YouTube 等)进行交互。借助 Composer 和第三方包。提供了创建数据库表和用于上传图像的视图文件的示例,以构建未来的图库。
使用 Lucene 库进行搜索
这里讨论了通过 Lucene 库实现的全文搜索(在框架的第一个版本中,它是框架的一部分,而在第二个版本中,它成为了一个需要额外安装的独立库)。
创建简单的商店
正如章节标题所示,这里尝试创建一个在线商店。虽然没有商品目录,但展示了创建购物车的机制——从创建表到控制器代码和界面的创建。此外,还介绍了使用 SpeckPaypal 插件与 PayPal Express Checkout 的集成示例。
HTML5 支持
本章介绍了当时新的 HTML5 标签,特别是用于表单处理的标签。列出了框架中用于处理这些表单元素的辅助函数。
创建移动应用程序
这里讨论了使用 CCM(Cloud Connected Mobile)技术创建第一个云移动应用程序。介绍了 Zend Developer Cloud——一个云开发环境。