chubbyphp/chubbyphp-laminas-config

使用 laminas 服务管理器配置的 Chubbyphp 容器适配器。

1.4.0 2023-11-27 20:36 UTC

This package is auto-updated.

Last update: 2024-09-10 20:04:47 UTC


README

CI Coverage Status Mutation testing badge Latest Stable Version Total Downloads Monthly Downloads

bugs code_smells coverage duplicated_lines_density ncloc sqale_rating alert_status reliability_rating security_rating sqale_index vulnerabilities

描述

使用 laminas 服务管理器配置的 Chubbyphp 容器适配器。

需求

安装

通过 Composerchubbyphp/chubbyphp-laminas-config 的形式。

composer require chubbyphp/chubbyphp-laminas-config "^1.4"

使用方法

<?php

declare(strict_types=1);

use Chubbyphp\Laminas\Config\Config;
use Chubbyphp\Laminas\Config\ContainerFactory;

$factory = new ContainerFactory();

$container = $factory(
    new Config([
        'dependencies' => [
            'services'   => [],
            'invokables' => [],
            'factories'  => [],
            'aliases'    => [],
            'delegators' => [],
        ],
        // ... other configuration
    ])
);

dependencies 子关联数组可以包含以下键

  • services: 一个关联数组,将一个键映射到特定的服务实例。
  • invokables: 一个关联数组,将一个键映射到一个无参数构造函数的服务;即对于不需要构造函数参数的服务。键和服务名称通常相同;如果它们不同,则键被视为别名。
  • factories: 一个关联数组,将服务名称映射到工厂类名称或任何可调用对象。工厂类必须无参数可实例化,并在实例化后可调用(即实现 __invoke() 方法)。
  • aliases: 一个关联数组,将别名映射到服务名称(或另一个别名)。
  • delegators: 一个关联数组,将服务名称映射到委托工厂键的列表,有关更多详细信息,请参阅Mezzio 委托者文档

请注意,整个配置在 $containerconfig 键中可用

$config = $container->get('config');

与 Mezzio 一起使用

config/container.php 中的内容替换为以下内容

<?php

declare(strict_types=1);

use Chubbyphp\Laminas\Config\Config;
use Chubbyphp\Laminas\Config\ContainerFactory;

$config  = require __DIR__ . '/config.php';
$factory = new ContainerFactory();

return $factory(new Config($config));

版权

2024 Dominik Zogg