phramz / composer-repository-model
composer仓库(即`packages.json`)模型构建组件
dev-master
2015-03-18 10:51 UTC
Requires
- php: >=5.3.3
- doctrine/common: 2.*
- guzzlehttp/guzzle: ~3.8
- jms/serializer: *
- psr/log: ~1.0
- symfony/event-dispatcher: 2.*
Requires (Dev)
- phpunit/phpunit: ~4.1
- raulfraile/ladybug: ~1.0
This package is not auto-updated.
Last update: 2024-09-24 02:18:47 UTC
README
composer仓库(即packages.json
)模型构建组件
使用此库,您可以
- 从任何可通过HTTP访问的仓库(例如Packagist或私有Satis)检索
packages.json
- 序列化或反序列化JSON数据
- 构建面向对象的模型
- 浏览模型,包括引用的文件,如
includes
和providers
此库处于早期alpha版本,请注意,未来的版本中可能会有任何变化!
要求
- PHP 5.3.3或更高版本
安装
最佳安装方式是使用Composer
- 编辑您的
composer.json
并添加一个依赖项
"require": { "phramz/composer-repository-model": "dev-master" }
- 或让Composer为您完成
php composer.phar require phramz/composer-repository-model
许可协议
此库采用MIT许可协议。有关更多信息,请参阅LICENSE文件。
配置
没有任何配置,直接使用即可。
用法
use Phramz\Component\ComposerRepositoryModel\Service\RepositoryService; // create an instance of the RepositoryService $service = new RepositoryService(); // fetch and parse the `packages.json` from `https://packagist.org.cn` echo $service // [packages.json] ->buildModel( 'https://packagist.org.cn', 'packages.json' ) // [packages.json][provider-includes] ->getProviderIncludes() // [packages.json][provider-includes][p/provider-archived$%hash%.json] ->get('p/provider-2013$%hash%.json') // [packages.json][provider-includes][p/provider-archived$0123456789.json][providers] ->getProviders() // [packages.json][provider-includes][...][providers][p/phramz/doctrine-annotation-scanner$0123456789.json] ->get("phramz/doctrine-annotation-scanner") // [packages.json][provider-includes][...][providers][...][packages] ->getPackages() // [packages.json][provider-includes][...][providers][...][packages][phramz/doctrine-annotation-scanner] ->first() // [packages.json][provider-includes][...][providers][...][packages][...][v1.0.0] ->last() // [packages.json][provider-includes][...][providers][...][packages][...][v1.0.0][source] ->getSource() // [packages.json][provider-includes][...][providers][...][packages][...][v1.0.0][source][url] ->getUrl(); // ... will output `https://github.com/phramz/doctrine-annotation-scanner.git`
已知问题
- 目前没有...
贡献
欢迎提交Pull-Requests!如果您打算贡献,请确保
- 您的PR通过了travis-build测试
- 您的编码风格遵循PSR-2规范