markwalet / laravel-packagist
为`spatie/packagist-api`包提供的Laravel包装器。
v1.7.0
2024-04-05 16:46 UTC
Requires
- php: ^8.1
- ext-json: *
- laravel/framework: ^10.0|^11.0
- phpoption/phpoption: >=1.8
- spatie/packagist-api: ^2.0
Requires (Dev)
- orchestra/testbench: 8.*|9.*
- phpunit/phpunit: ^10.5
This package is auto-updated.
Last update: 2024-09-05 17:37:27 UTC
README
为spatie/packagist-api包提供的Laravel包装器。
安装
您可以使用composer安装此包
composer require markwalet/laravel-packagist
Laravel使用包自动发现,因此您不需要注册服务提供者。如果您想手动注册服务提供者,请将以下行添加到您的config/app.php
文件中
MarkWalet\Packagist\PackagistServiceProvider::class,
使用方法
您可以通过以下两种主要方式调用Packagist:
使用应用程序容器
/** @var \Spatie\Packagist\PackagistClient $client */ $client = app(\Spatie\Packagist\PackagistClient::class); $client->getPackage('markwalet', 'laravel-packagist');
使用外观
Packagist::getPackage('markwalet', 'laravel-packagist');
可用方法
列出包名称
// All packages Packagist::getPackagesNames(); // Filter on type. Packagist::getPackagesNamesByType('composer-plugin'); // Filter on organization Packagist::getPackagesNamesByVendor('markwalet');
搜索包
// Search packages by name. Packagist::searchPackagesByName('packagist'); // Search packages by tag. Packagist::searchPackagesByTags('psr-3'); // Search packages by type. Packagist::searchPackagesByType('composer-plugin'); // Combined search. Packagist::searchPackages('packagist', ['type' => 'library']);
分页
搜索包会返回分页结果。您可以通过添加更多参数来更改分页设置。
// Get the third page, 10 items per page. Packagist::searchPackagesByName('packagist', 3, 10);
获取包数据。
// Using the Composer metadata. (faster, but less data) Packagist::getPackageMetadata('markwalet/laravel-packagist'); Packagist::getPackageMetadata('markwalet', 'laravel-packagist'); // Using the API. (slower, cached for 12 hours by Packagist. Packagist::getPackage('markwalet/laravel-packagist'); Packagist::getPackage('markwalet', 'laravel-packagist');
获取统计信息
$packagist->getStatistics();
配置
默认情况下,Packagist的API URL设置为https://packagist.org.cn
。如果您想覆盖它,您可以将以下代码块添加到您的config/services.php
文件中
'packagist' => [ 'base_url' => 'https://packagist.org.cn', 'repo_url' => 'https://repo.packagist.org', ],