shlinkio/shlink-config

Shlink项目配置加载、解析和操作的实用工具

v3.1.0 2024-07-22 06:52 UTC

This package is auto-updated.

Last update: 2024-09-04 11:27:27 UTC


README

Build Status Code Coverage Latest Stable Version License Paypal donate

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服务,将使用缓存执行映射。