bangpound/composer-constants

自动定义常数,以暴露Composer配置的详细信息

安装量: 15,431

依赖项: 2

建议者: 0

安全: 0

星标: 3

关注者: 3

分支: 0

公开问题: 0

类型:composer-plugin

2.0.0 2023-09-21 02:07 UTC

This package is auto-updated.

Last update: 2024-09-21 04:07:47 UTC


README

此Composer插件在生成的autoload.php中定义常数,包括Composer自动加载工厂类名、composer.json文件、基本目录、bin目录和vendor目录。

如果您需要在您的Composer项目中进行更多运行时内省,请参阅joshdifabio/composed

安装

composer require bangpound/composer-constants

配置

如果您想覆盖默认前缀COMPOSER_,请设置composer-constant-prefix

{
    "extra": {
        "composer-constant-prefix": "SPECIAL_COMPOSER_"
    }
}

用法

当Composer导出自动加载器时,此插件将为上述每个值添加新的常数。

示例 vendor/autoload.php

<?php

// autoload.php @generated by Composer

require_once __DIR__ . '/composer' . '/autoload_real.php';

if (!defined('COMPOSER_AUTOLOAD_CLASS')) {
    define('COMPOSER_AUTOLOAD_CLASS', 'ComposerAutoloaderInit283c0e3e301a833e1abc76806341c497');
}

if (!defined('COMPOSER_BASE_DIR')) {
    define('COMPOSER_BASE_DIR', '/srv/project');
}

if (!defined('COMPOSER_BIN_DIR')) {
    define('COMPOSER_BIN_DIR', '/srv/project/bin');
}

if (!defined('COMPOSER_FILE')) {
    define('COMPOSER_FILE', '/srv/project/composer.json');
}

if (!defined('COMPOSER_VENDOR_DIR')) {
    define('COMPOSER_VENDOR_DIR', '/srv/project/vendor');
}

return ComposerAutoloaderInit283c0e3e301a833e1abc76806341c497::getLoader();

如果您想在您的Symfony依赖注入容器中使用Composer自动加载器,请按照以下方式设置服务

services:
    class_loader:
        class: Composer\Autoload\Classloader
        factory: [ '@=constant("COMPOSER_AUTOLOAD_CLASS")', getLoader ]