
yii2-packagist-component — yii 2 Packagist API extension component.
skeeks/yii2-packagist-component
Все современные разработчики знают Composer и Packagist (ну, или слышали об этих вещах). Так вот если вам, в вашем проекте потребуется чтение данных о пакетах, то этот компонент поможет вам. Например, в нашем маркетплейс, как раз используется этот компонент.
-
Семенов Александр
- /
- Other
- /
- 7 years ago
- /
- /
- 7365
- /
- 0
Publication time: Thursday, February 25, 2016 (7 years ago)
Created by: Семенов Александр Сергеевич
Category: Other
Current version:
Jan 1, 1970, 3:00:00 AM (53 years ago)
Packagist: skeeks/yii2-packagist-component
: https://github.com/skeeks-semenov/yii2-packagist-component
:
Type of: Компонент
Все современные разработчики знают Composer и Packagist (ну, или слышали об этих вещах). Так вот если вам, в вашем проекте потребуется чтение данных о пакетах, то этот компонент поможет вам. Например, в нашем маркетплейс, как раз используется этот компонент. Ну и конечно же кэшируйте данные о пакетах, они меняются не так часто.
Первоначальный автор проекта: https://github.com/2amigos/yii2-packagist-component (можете использовать его компонент, но он давно не обновлялся)
В текущем исправлены некоторые баги (получение Readme информации по проекту)
Пример кэширования информации о пакетах:
protected $_info = false;
/**
* @return \dosamigos\packagist\Package
*/
public function getInfo()
{
if ($this->_info === false)
{
$key = $this->packagistCode;
if (!\Yii::$app->cache->exists($key))
{
$api = new \dosamigos\packagist\Packagist;
// get a package information
$response = $api->package($this->packagistCode)->getResponse();
// dump response
/**
* @var $package \dosamigos\packagist\Package;
*/
\Yii::$app->cache->add($key, $response->body, 3600*2); //2 часов
$this->_info = $response->body;
} else
{
$this->_info = \Yii::$app->cache->get($key);
}
}
return $this->_info;
}
Packagist API wrapper component extension for Yii2
Component extension wrapper for Packagist API
Installation
The preferred way to install this extension is through composer.
Either run
php composer.phar require "skeeks/yii2-packagist-component" "*"
or add
"skeeks/yii2-packagist-component" : "*"
to the require section of your application’s composer.json
file.
Usage
use dosamigos\packagist\Packagist;
$api = new Packagist;
// get a package information
$response = $api->package('yiisoft/yii2`)->getResponse();
// dump response
var_dump($response->body);
// get a filtered list
$response = $api->all(['vendor' => '2amigos'])->getResponse();
if($response->isSuccessFul) {
var_dump($response->body);
} else {
var_dump($response->error);
}
// search packages
$response = $api->search('yii2')->getResponse();
var_dump($response->body);
SkeekS CMS (Yii2) — fast, simple, effective! skeeks.com | cms.skeeks.com | marketplace.cms.skeeks.com
dev-master — Jan 1, 1970, 3:00:00 AM (53 years ago)
0.1.2 — Jan 1, 1970, 3:00:00 AM (53 years ago)
0.1.1 — Jan 1, 1970, 3:00:00 AM (53 years ago)
0.1.0 — Jan 1, 1970, 3:00:00 AM (53 years ago)
Стандартная установка:
Добавьте composer.json файл вашего проекта:
"skeeks/yii2-packagist-component": "*"
Запустите обновление зависимостей
All Comments (0)