louzet / composer-lock-file-parser
1.0.0
2019-12-09 11:07 UTC
Requires
- php: ^7.3
- ext-json: *
Requires (Dev)
- phpunit/phpunit: ^7.0
This package is auto-updated.
Last update: 2024-09-21 20:48:55 UTC
README
在这里放置您的描述。尽量限制为一两段,并可能提及您支持的PSR,以避免与用户和贡献者产生混淆。
安装
您可以通过composer安装此包。
composer require louzet/composer-lock-file-parser
使用方法
<?php declare(strict_types=1); require_once 'vendor/autoload.php'; use ComposerLockParser\Parser\FileParser; $parser = FileParser::parse('path/to/composer.lock');
首先,我们需要导入FileParser工厂,并解析composer.lock文件。现在,$parser 是一个PackageCollection对象,具有一些输出信息的 方法。
<?php print_r($parser->getPackages()); array (size=10) 'bower-asset/bootstrap' => object(ComposerLockParser\Package\Package)[2] private 'name' => string 'bower-asset/bootstrap' (length=21) private 'version' => string 'v3.2.0' (length=6) private 'source' => array (size=3) 'type' => string 'git' (length=3) 'url' => string 'https://github.com/twbs/bootstrap.git' (length=37) 'reference' => string 'c068162161154a4b85110ea1e7dd3d7897ce2b72' (length=40) private 'dist' => array (size=4) 'type' => string 'zip' (length=3) 'url' => string 'https://api.github.com/repos/twbs/bootstrap/zipball/c068162161154a4b85110ea1e7dd3d7897ce2b72' (length=92) 'reference' => string 'c068162161154a4b85110ea1e7dd3d7897ce2b72' (length=40) 'shasum' => string '' (length=0) private 'require' => array (size=1) 'bower-asset/jquery' => string '>=1.9.0' (length=7) private 'requireDev' => array (size=0) empty private 'suggest' => array (size=0) empty private 'type' => string 'bower-asset-library' (length=19) private 'extra' => array (size=2) 'bower-asset-main' => array (size=7) ... 'bower-asset-ignore' => array (size=8) ... private 'autoload' => array (size=0) empty private 'notificationUrl' => string '' (length=0) private 'license' => array (size=0) empty private 'authors' => array (size=0) empty private 'description' => string 'The most popular front-end framework for developing responsive, mobile first projects on the web.' (length=97) private 'homepage' => string '' (length=0) private 'keywords' => array (size=8) 0 => string 'css' (length=3) 1 => string 'framework' (length=9) 2 => string 'front-end' (length=9) 3 => string 'js' (length=2) 4 => string 'less' (length=4) 5 => string 'mobile-first' (length=12) 6 => string 'responsive' (length=10) 7 => string 'web' (length=3) private 'time' => null 'bower-asset/jquery' => object(ComposerLockParser\Package\Package)[4] ...
$parser->getPackages() 内部的每个元素都是一个 Package 实体,您可以对其实施操作。
其他使用方法
<?php declare(strict_types=1); require_once 'vendor/autoload.php'; use ComposerLockParser\Parser\FileParser; $parser = FileParser::parse('resources/composer.lock'); if ($parser->nameExists('bower-asset/bootstrap')) { // do some stuff print_r($parser->getByName('bower-asset/bootstrap')); }
安全
如果您发现任何安全相关的问题,请创建一个问题或提出一个pull request!
许可证
MIT许可证(MIT)。请参阅许可证文件获取更多信息。