marvin255/cbrfservice

This package is abandoned and no longer maintained. The author suggests using the liquetsoft/cbrfservice package instead.

Component for bank of Russia daily web service

v8.0.1 2023-12-02 19:35 UTC

This package is auto-updated.

Last update: 2023-12-02 19:36:51 UTC


README

Latest Stable Version Total Downloads License Build Status

Php обертка для сервиса Центробанка РФ.

Установка

Добавьте библиотеку в проект с помощью Composer:

composer req liquetsoft/cbrfservice

Использование

//инициируем новый объект сервиса
$cbrf = \Liquetsoft\CbrfService\CbrfFactory::createDaily();
//получаем курсы всех валют
$rates = $cbrf->getCursOnDate(new \DateTimeImmutable());

//получаем курс валюты по ее буквенному коду
$rateEur = $cbrf->getCursOnDateByCharCode(new \DateTimeImmutable(), 'EUR');

//получаем курс валюты по ее цифровому коду
$rate978 = $cbrf->getCursOnDateByNumericCode(new \DateTimeImmutable(), 978);
//получаем словарь всех доступных валют
$currencies = $cbrf->enumValutes();

//получаем описание валюты из словаря по буквенному коду
$enumEur = $cbrf->enumValuteByCharCode('EUR');

//получаем описание валюты из словаря по цифровому коду
$enum978 = $cbrf->enumValuteByNumericCode(978);

//получаем динамику курса для указанной валюты за последний месяц
$dynamic = $cbrf->getCursDynamic(
    new \DateTimeImmutable('-1 month'),
    new \DateTimeImmutable(),
    $enumEur
);

В случае, если необходимо передать сконфигурированный заранее транспорт, например для использования proxy:

//инициируем новый объект SoapClient
$client = new SoapClient(
    \Liquetsoft\CbrfService\CbrfSoapService::DEFAULT_WSDL,
    [
        'proxy_host' => 'localhost',
        'proxy_port' => 8080
    ]
);

//инициируем новый объект сервиса
$cbrf = \Liquetsoft\CbrfService\CbrfFactory::createDaily($client);

Обработка ошибок

Все ошибки, которые будут перехвачены при запросах, будут выброшены как исключение \Liquetsoft\CbrfService\CbrfException. Если \SoapClient будет сконфигурирован с отключенными исключениями, то обработка ошибок остается на стороне клиентского скрипта.

Методы

Описание методов вы можете найти на сайте банка России.