合同组件

编辑该页面

警告:你浏览的文档欧宝官网下载appob娱乐下载Symfony 5.2,不再维护。

这个页面的更新版本Symfob娱乐下载ony 6.2(当前的稳定版本)。

合同组件

合同组件提供了一组抽象提取的Symfony组件。ob娱乐下载可以用它们来构建语义,Symfony组件被证明是有用的,已经有一些久经沙场的实现。ob娱乐下载

安装

提供合同作为单独的包,所以你可以只安装项目的需要:

1 2 3 4 5 6
美元作曲家需要symfony / caob娱乐下载che-contracts美元作曲家需要symfony / evob娱乐下载ent-dispatcher-contracts美元作曲家需要symfony / deob娱乐下载precation-contracts美元作曲家需要symfony / htob娱乐下载tp-client-contracts美元作曲家需要symfony /服务合ob娱乐下载同美元作曲家需要symfony / trob娱乐下载anslation-contracts

请注意

如果你安装这个组件之外的Symfony应用程序,你必须要求ob娱乐下载供应商/ autoload.php文件在你的代码,使作曲家提供的类加载机制。读这篇文章为更多的细节。

使用

这个包很有用的抽象实现松散耦合和互操作性。通过使用提供的接口类型提示,您可以重用任何匹配合同的实现。可能是一个Symfony组件ob娱乐下载,或者另一个包提供的PHP社区。欧宝体育平台怎么样

根据其语义,可以结合一些接口自动装配无缝地注入服务在你的类。

其他人可能是有用的作为标签界面,提示对一个特定的行为,可以使用时启用自动配置或手动服务标签(或任何其他手段所提供的框架)。

设计原则

  • 合同由域分割,每个在自己的子名称空间;
  • 合同是微小而持续的PHP接口,特征,规范docblocks和参考测试套件适用时,……;
  • 合同必须有一个证明实施进入这个存储库;
  • 合同必须是向后兼容现有的Symfony组件。ob娱乐下载

包,实现特定的合同应该在列表提供部分的composer.json文件,使用ob娱乐下载symfony / *实现公约。例如:

1 2 3 4 5 6
{“…”:“…”,“提供”:{“ob娱乐下载symfony /缓存实现”:“1.0”}}

常见问题

这不同于PHP-FIG psr怎么样?

当适用时,所提供的合同是建立在上面PHP-FIGpsr。然而,PHP-FIG有不同的目标和不同的过程。ob娱乐下载Symfony合同专注于提供抽象,它是有用的在自己的同时兼容Symfony提供的实现。

这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。