shlinkio / shlink-config
Shlink项目配置加载、解析和操作的实用工具
v3.1.0
2024-07-22 06:52 UTC
Requires
- php: ^8.2
- cuyz/valinor: ^1.12
- laminas/laminas-config: ^3.9
- laminas/laminas-servicemanager: ^4.2 || ^3.22
Requires (Dev)
- devster/ubench: ^2.1
- phpstan/phpstan: ^1.11
- phpunit/phpunit: ^11.2
- psr/simple-cache: ^2.0
- roave/security-advisories: dev-master
- shlinkio/php-coding-standard: ~2.3.0
- symfony/var-dumper: ^7.1
README
Shlink项目配置加载、解析和操作的实用工具。
安装
使用 composer 安装此工具。
composer install shlinkio/shlink-config
此库也是一个mezzio模块,它提供了自己的
ConfigProvider
。将其添加到配置中,以自动设置一切。
包含的实用工具
-
loadConfigFromGlob
: 期望glob模式的函数,加载并合并所有匹配的配置文件。 -
EnvVarLoaderProvider
: 一个配置提供程序,将加载的配置条目加载到环境变量中,并始终返回空。设计为管道中的第一个配置提供程序。 -
DottedAccessConfigAbstractFactory
: 一个抽象工厂,允许使用config.foo.bar
语法通过服务获取任何配置参数。 -
ValinorConfigFactory
: 一个PSR-11工厂,允许您使用cuyz/valinor将任意对象从数组中映射出来。为了使用它,您必须将映射的对象注册为服务,并使用返回原始数组的数据的服务作为静态方法名,使用ValinorConfigFactory以静态方式访问。
<?php declare(strict_types=1); return [ MyCoolOptions::class => [ValinorConfigFactory::class, 'config.foo.options'], ];
将此工厂与
DottedAccessConfigAbstractFactory
结合使用很有用。如果找到
Psr\SimpleCache\CacheInterface
服务,将使用缓存执行映射。