fr3nch13/composer-lock-parser

composer.lock 文件的面向对象读取器。

1.0.0 2023-02-27 03:34 UTC

This package is auto-updated.

Last update: 2024-09-30 01:52:16 UTC


README

Coverage Total Downloads Latest Stable Version GitHub release

composer.lock 文件的面向对象读取器

这是一个位于: https://github.com/t4web/ComposerLockParser 的原始项目的分支。

简介

以面向对象的方式解析 composer.lock 文件,并返回已安装包的完整信息。

要求

PHP >= 7.4

待办事项

  • 将来自 composer.lock 的信息添加到 Package.php

安装

composer.json

"require": {
    "fr3nch13/composer-lock-parser": "~1.0"
}

或者

composer require fr3nch13/composer-lock-parser

用法

创建 ComposerInfo 对象并获取所有包

$composerInfo = new \ComposerLockParser\ComposerInfo('/path/to/composer.lock');
// default all packages
$packages = $composerInfo->getPackages();
// or explicitly get all packages
$packages = $composerInfo->getPackages($composerInfo::ALL);

echo $packages[0]->getName();
echo $packages[0]->getVersion();
echo $packages[0]->getNamespace();

仅获取生产包。

$composerInfo = new \ComposerLockParser\ComposerInfo('/path/to/composer.lock');
$packages = $composerInfo->getPackages($composerInfo::PRODUCTION);

仅获取开发包。

$composerInfo = new \ComposerLockParser\ComposerInfo('/path/to/composer.lock');
$packages = $composerInfo->getPackages($composerInfo::DEVELOPMENT);

测试

使用 Phpunit, phpstan 和 phpcs 运行测试,建议在提交代码并推送到 GitHub 之前运行 composer ci。请参阅 composer.json 中的 scripts

$ composer ci
$ composer test
$ composer cs-check
$ composer phpstan