在今天,PHP组件和框架的数量很多,可以说是多如牛毛。PHP生态系统是个名副其实的大熔炉,有各种各样的代码,帮助开发者构建强大的应用。为了使这些不同的组件代码、框架能互相通信,共享代码,就诞生了PHP-FIG这个组织,PHP-FIG制定了推荐规范,PHP框架可以自愿实现这些规范,改进与其他框架的通信和共享功能。如今的很多受欢迎的大型PHP框架通常都会实现定案的PHP-FIG推荐规范。

PHP-FIG的使命是实现框架的互操作性。框架的互操作性是指,通过接口、自动加载机制和标准的风格,让框架互相操作。

接口

PHP框架之间通过共用的接口合作。框架通过PHP接口假定第三方依赖提供了什么方法,而不关心依赖是如何实现接口的。

例如:假如第三方日志记录器对象实现了alert(),critical(),error(),warning()和debug()等方法,那么框架就可以放心的使用这个记录器对象。至于这些方法是如何实现的无关紧要,框架只关心第三方依赖是否实现了这些方法。

PHP开发者使用接口可以开发、共享并使用专门的组件,而无需使用庞大的框架。

自动加载

PHP框架之间通过自动加载机制合作。自动加载是指,PHP解释器在运行时按需自动找到并加载PHP类的过程。

在这些PHP标准出现之前,PHP组件和框架会使用模式方法__autoload()或最新的spl_autoload_register()方法实现各自特有的自动加载器。因此,我们要学习使用每一个组件和框架各自特有的自动加载器。而如今,多数现代的PHP组件和框架都符合同一个自动加载器标准。这意味着,我们只需使用一个自动加载器就能混合搭配多个PHP组件。

风格

PHP框架之间通过标准的代码风格合作。代码风格是指如何使用空格、大小写和括号的位置(等待)。如果PHP框架都使用标准的代码风格,那么每次使用新PHP框架时,PHP开发者已经对框架所用的风格就很熟悉了,就不用适应新的风格。标准的代码风格还能降低项目新贡献者的门槛,让新贡献者把更多的时间用在解决缺陷上,而不用花太多时间学习不熟悉的风格。

标准的代码风格对我们自己的项目也有好处。每个开发者都有一些独特的风格,如果多为开发者在同一个代码基中工作,就会显露问题。使用标准的代码风格,不管作者是谁,团队中的所有成员都能立即理解代码基。

关于代码风格的规范,PHP-FIG退出了PSR,即PHP Standard Recommendation(PHP推荐标准)的简称。它包括PSR-1,PSR-2,PSR-3,PSR-4四个规范,现代的PHP框架基本都会遵守这些规范,这些个规范的具体详细内容就等下一篇总结再介绍吧。今天就先写到这里。

^_^ happy coding!