sandrokeil/interop-config

提供接口和具体实现,通过工厂类根据配置创建实例,并确保有效的配置结构。它还可以用于自动发现工厂和创建配置文件。

2.2.0 2020-09-05 12:13 UTC

This package is auto-updated.

Last update: 2024-09-05 21:09:42 UTC


README

您想配置您的工厂吗?

您想减少您的工厂样板代码吗?

您想自动检查必需的选项或合并默认选项吗?

您想要一个有效的配置结构吗?

您想从工厂类生成配置文件吗?

这个库将帮您解决问题!

Build Status Scrutinizer Quality Score Coverage Status Latest Stable Version Total Downloads License

interop-config 提供接口和具体实现,通过工厂类根据配置创建实例,并确保有效的配置结构。它还可以用于自动发现工厂和创建配置文件。

  • 经过充分测试。 除了单元测试和持续集成/检查之外,此解决方案也适用于生产使用。
  • 无框架限制 此PHP库不依赖于任何框架,但您可以使用它与您喜欢的框架一起使用。
  • 每项更改都有记录。 想要知道有什么新功能? 请查看 CHANGELOG.md
  • 倾听您的想法。 有一个好主意? 带着经过测试的pull request来或者打开一个新问题。 查看 CONTRIBUTING.md

您应该有编码规范和配置规范。如果没有,您应该考虑一下。 interop-config 具有普遍适用性! 更多详情请参阅 文档

安装

建议的安装方法是使用composer。有关composer文档,请参阅 getcomposer.org

运行 composer require sandrokeil/interop-config 来安装 interop-config。版本 1.x 用于PHP < 7.1,版本 2.x 用于PHP >= 7.1。

文档

有关最新在线文档,请访问 http://sandrokeil.github.io/interop-config/。 参考快速入门部分以获取详细说明。

文档位于 doc树 中,可以使用 bookdownDocker 编译

$ docker run -it --rm -v $(pwd):/app sandrokeil/bookdown doc/bookdown.json
$ docker run -it --rm -p 8080:8080 -v $(pwd):/app php:7.1-cli php -S 0.0.0.0:8080 -t /app/doc/html

或运行 bookdown

$ ./vendor/bin/bookdown doc/bookdown.json
$ php -S 0.0.0.0:8080 -t doc/html/

然后浏览到 http://localhost:8080/

项目

这是使用 interop-config 接口的项目列表(不完整)。

基准测试

基准测试使用PHPBench,可以通过以下命令启动:

$ ./vendor/bin/phpbench run -v --report=table

或者使用Docker

$ docker run --rm -it --volume $(pwd):/app prooph/php:7.1-cli-opcache php ./vendor/bin/phpbench run --report=table

您可以使用groupfilter参数来获取特定组/过滤器的结果。

以下组可供选择:perfconfigconfigIdmandatorymandatoryRevdefault

以下过滤器可供选择:canoptionsfallback