decodelabs/integra

Composer文件检查器和前端

v0.1.10 2024-08-21 23:42 UTC

This package is auto-updated.

Last update: 2024-09-04 21:25:57 UTC


README

PHP from Packagist Latest Version Total Downloads GitHub Workflow Status PHPStan License

Composer文件检查器和前端

Integra为您的composer.json文件提供检查工具,并在项目中控制Composer的前端。

DecodeLabs博客 上获取新闻和更新。

安装

通过Composer安装

composer require decodelabs/integra

使用方法

加载一个上下文进行工作

use DecodeLabs\Integra\Context;

$context = new Context('path/to/project/');

或使用Integra Veneer前端从cwd()工作。Integra将在文件树中搜索最近的composer.json。

echo Integra::$runDir; // Working directory
echo Integra::$rootDir; // Parent or current dir containing composer.json
echo Integra::$binDir; // Bin dir relative to composer
echo Integra::$composerFile; // Location  of composer.json

Integra::run('update'); // composer update
Integra::runGlobal('update'); // composer global update
Integra::runScript('my-script'); // composer run-script my-script
Integra::runBin('phpstan', '--debug'); // composer exec phpstan -- --debug
Integra::runGlobalBin('phpstan', '--debug'); // composer global exec phpstan -- --debug

if(!Integra::hasPackage('package1')) {
    Integra::install('package1', 'package2'); // composer require package1 package2
}

Integra::installDev('package1', 'package2'); // composer require package1 package2 --dev
Integra::installGlobal('package1', 'package2'); // composer global require package1 package2
Integra::installDevGlobal('package1', 'package2'); // composer global require package1 package2 --dev

清单

访问composer.json清单

$manifest = Integra::getLocalManifest();
echo $manifest->getDescription();

foreach($manifest->getRequiredPackages() as $package) {
    echo $package->name;
}

查看Manifest.php类以获取完整的数据访问接口 - 它映射到大多数文档化的composer配置选项。

许可

Integra采用MIT许可证。有关完整的许可证文本,请参阅LICENSE