tourze / php-packer-config
配置管理工具,用于PHP Packer的配置加载、验证和管理
0.0.1
2025-04-11 06:15 UTC
Requires
- php: ^8.1
- psr/log: ^3|^2|^1
Requires (Dev)
- phpstan/phpstan: ^2.1
- phpunit/phpunit: ^10.0
This package is auto-updated.
Last update: 2025-04-25 17:38:11 UTC
README
A lightweight and robust configuration management component for PHP Packer, responsible for loading, validating, and managing configuration files.
Features
- Load and parse configuration files
- Validate configuration and handle errors
- Unified configuration access interface
- Flexible configuration options and extensibility
Installation
Requirements: PHP >= 8.1, psr/log
composer require tourze/php-packer-config
Quick Start
Basic Usage
use PhpPacker\Config\Configuration; use Psr\Log\LoggerInterface; // Create a configuration instance $configuration = new Configuration('path/to/config.php', $logger); // Read configuration values $entryFile = $configuration->getEntryFile(); $outputFile = $configuration->getOutputFile();
Example Config File
// config.php return [ 'entry' => 'src/index.php', 'output' => 'dist/app.php', 'exclude' => [ 'vendor/some-package', 'tests', ], 'assets' => [ 'src/assets/image.png' => 'assets/image.png', ], 'minify' => true, 'comments' => false, 'debug' => false, ];
Configuration Options
Option | Type | Default | Description |
---|---|---|---|
entry | string | - | Entry file path (required) |
output | string | - | Output file path (required) |
exclude | array | [] | Patterns for files/directories to skip |
assets | array | [] | Asset files mapping (source => target) |
minify | bool | false | Whether to minify code |
comments | bool | true | Keep comments in output |
debug | bool | false | Enable debug mode |
clean_output | bool | false | Clean output directory before build |
remove_namespace | bool | false | Remove namespace from output |
Contribution Guide
- Issues and PRs are welcome
- Follow PSR coding standards
- Please ensure tests pass before submitting
License
MIT License
Changelog
See CHANGELOG