bangpound / composer-constants
自动定义常数,以暴露Composer配置的详细信息
2.0.0
2023-09-21 02:07 UTC
Requires
- composer-plugin-api: ^2.0
Requires (Dev)
- composer/composer: ^2.0
- phpunit/phpunit: ^10.3
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 ]