buzzingpixel/corbomite-di 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

buzzingpixel/corbomite-di

最新稳定版本:1.2.0

Composer 安装命令:

composer require buzzingpixel/corbomite-di

包简介

Corbomite DI

README 文档

README

Part of BuzzingPixel's Corbomite project.

Configuration

Configuration can be provided in your project's composer.json extra key, or in some cases with environment variables.

diConfigFilePath

Your app, or any composer package can register a config file to load in composer.jsons extra object with the key diConfigFilePath.

{
    "name": "vendor/name",
    "extra": {
        "diConfigFilePath": "src/diConfig.php"
    }
}

The return of that config file should look something like this:

<?php
declare(strict_types=1);

use some\Dependency;
use some\OtherDependency;
use my\namespaced\CoolClass;
use my\namespaced\AnotherCoolClass;

return [
    CoolClass::class => function () {
        return new CoolClass(new Dependency());
    },
    AnotherCoolClass::class => function () {
        return new AnotherCoolClass(
            new Dependency(),
            new OtherDependency()
        );
    },
];

corbomiteDiConfig.useAutoWiring

false by default for backwards compatibility reasons. The next major version will enable this by default. Optionally set with environment variable: putenv('CORBOMITE_DI_USE_AUTO_WIRING=true')

corbomiteDiConfig.useAnnotations

false by default for backwards compatibility reasons. The next major version will enable this by default. Optionally set with environment variable: putenv('CORBOMITE_DI_USE_ANNOTATIONS=true')

corbomiteDiConfig.ignorePhpDocErrors

false by default. Optionally set with environment variable: putenv('CORBOMITE_DI_IGNORE_PHPDOC_ERRORS=true')

corbomiteDiConfig.compileTo

Set the path relative to your project's composer.json. Optionally set with environment variable (note when using environment variable this must be a full path and not relative): putenv('CORBOMITE_DI_COMPILATION_DIR=/path/to/directory')

corbomiteDiConfig.writeProxiesTo

Set the path relative to your project's composer.json. Optionally set with environment variable (note when using environment variable this must be a full path and not relative): putenv('CORBOMITE_DI_WRITE_PROXIES_TO_FILE=/path/to/directory')

CORBOMITE_DI_ENABLE_COMPILATION environment variable

In your production environment you'll want to set this to true and make sure corbomiteDiConfig.compileTo has a valid path.

CORBOMITE_DI_ENABLE_WRITING_PROXIES environment variable

In your production environment you'll want to set this to true and make sure corbomiteDiConfig.writeProxiesTo has a valid path.

Di's Class Methods

diContainer() (static) or getDiContainer() (non-static)

Gets the configured instance of PHP-DI. You probably shouldn't ever need to use this.

build() (static) or buildContainer() (non-static)

Allows you to build the container, perhaps in your front controller, sending any additional definitions you want to directly.

License

Copyright 2019 BuzzingPixel, LLC

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

统计信息

  • 总下载量: 5.42k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 18
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: Apache-2.0
  • 更新时间: 2018-12-29