著名框架概述

你已经对框架的功能和类型有了一定的了解。现在,是时候回顾一些最重要的框架了,这样你就能知道下一个 PHP Web 应用程序该从哪里开始寻找。请注意,随着 PHP 7 的发布,将会有很多新的或改进的 PHP 框架出现。请尽量保持与时俱进!

Symfony 2

在过去 10 年中,Symfony 一直是开发人员最喜爱的框架之一。在第 2 版重塑自身之后,Symfony 进入了模块框架时代。事实上,使用 Symfony 2 组件的项目与其他框架混杂在一起的情况很常见,因为你只需在 Composer 文件中添加模块名称即可使用它。

你只需执行一条命令,就能使用 Symfony 2 启动应用程序。Symfony 2 会为你创建所有目录、空配置文件等。你还可以通过命令行添加空控制器。它们使用 Doctrine 2 作为 ORM,这可能是目前 PHP 所能提供的最可靠的 ORM 之一。在模板引擎方面,你会发现 Twig,它与我们在框架中使用的一样。

总的来说,这是一个非常有吸引力的框架,背后有一个庞大的社区提供支持;此外,很多公司也在使用它。如果你不想使用整个框架,但又想利用其中的某些部分,那么至少应该查看一下模块列表。

Zend Framework 2

至少从去年开始,第二大 PHP 框架是 Zend Framework 2。与 Symfony 一样,Zend Framework 2 也已经问世很长时间了。此外,与其他现代框架一样,它也是以 OOP 方式构建的,试图实现网络应用程序的所有良好设计模式。它由多个组件组成,您可以在其他项目中重复使用这些组件,例如众所周知的身份验证系统。它缺少一些元素,如模板引擎(通常是 PHP 和 HTML 混合引擎)和 ORM,但您可以轻松集成自己喜欢的元素。

为了发布 Zend Framework 3,我们正在做大量的工作,它将支持 PHP 7、性能改进和其他一些新的组件。我们建议您密切关注它;它可能是一个不错的候选产品。

其它框架

尽管 Symfony 和 Zend Framework 是两大巨头,但最近几年出现了越来越多的 PHP 框架,发展速度相当快,并为游戏带来了更多有趣的功能。只要你开始浏览 PHP 项目,CodeIgniter、Yii、PHPCake 等名字就会让你耳熟能详。由于其中一些比 Symfony 和 Zend Framework 推出得晚,它们实现了一些其他产品不具备的新功能,如 JavaScript 和 jQuery 相关组件、与 Selenium 集成用于 UI 测试等。

尽管多样化总是件好事,因为你可能会从其中一个或另一个框架中得到你所需要的东西,但在选择框架时还是要明智一些。社区在这里扮演着重要的角色,因为如果你遇到任何问题,社区会帮助你解决,或者你可以在每次发布新的 PHP 版本时帮助框架发展。