marvin255 / cbrfservice
Component for bank of Russia daily web service
Installs: 4 152
Dependents: 0
Suggesters: 0
Security: 0
Stars: 7
Watchers: 4
Forks: 2
Open Issues: 0
Requires
- php: >=8.1
- ext-simplexml: *
- ext-soap: *
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- phpunit/phpunit: ^10.0
- vimeo/psalm: ^5.0
README
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
будет сконфигурирован с отключенными исключениями, то обработка ошибок остается на стороне клиентского скрипта.
Методы
Описание методов вы можете найти на сайте банка России.