nabarabane / cbr
v2.0.0
2023-05-12 17:18 UTC
Requires
- php: >=5.4.0
- ext-curl: *
- ext-libxml: *
- ext-simplexml: *
This package is auto-updated.
Last update: 2023-05-15 13:05:33 UTC
README
用于获取和解析俄罗斯联邦中央银行汇率数据的XML数据的库。
可用资源
- 货币指南
- 指定日期的汇率
- 一段时间内的汇率动态
数据输出: XML 或 PHP 数组。
安装
Composer
composer require webdenis77/cbr:^2.0
常规
将库的存档下载并解压到所需位置,然后连接库的自动加载器
require('path-to-package/autoloader.php');
使用
货币指南
http://www.cbr.ru/scripts/XML_valFull.asp
<?php try { $resource = new \CBR\Catalog(); $result = $resource // Опционально, фильтр по типам валют ->setType(\CBR\Catalog::TYPE_DAILY) // Валюты, устанавливаемые ежедневно (по умолчанию) ->setType(\CBR\Catalog::TYPE_MONTHLY) // Валюты, устанавливаемые ежемесячно // Выполнение запроса ->request() // Получение необработанного ответа ->getResultXML(); // Получение обработанного ответа ->getResult(); } catch (\Exception $e) { // Обработка исключения }
指定日期的汇率
http://www.cbr.ru/scripts/XML_daily.asp
<?php try { $resource = new \CBR\CurrencyDaily(); $result = $resource // Опционально, дата в становленном формате ->setDateFormat('d/m/Y') ->setDate('20/07/2015') ->setDateFormat('Y-m-d') ->setDate('2015-07-20') // Опционально, фильтр по кодам валют в установленном формате ->setKeyFormat(\CBR\Resource::KEY_CHAR) ->setCurrencies(['USD', 'EUR']) ->setKeyFormat(\CBR\Resource::KEY_NUM) ->setCurrencies(['840', '978']) ->setKeyFormat(\CBR\Resource::KEY_ID) ->setCurrencies(['R01235', 'R01239']) // Выполнение запроса ->request() // Получение необработанного ответа ->getResultXML(); // Получение обработанного ответа ->getResult(); /* Вернется именованный массив Ключи - коды валют, установленные через ->setKeyFormat() По умолчанию - \CBR\Resource::KEY_CHAR */ /* Дата обновления ставок в результате может не совпадать с той, которую вы указали (по выходным дням, например, ставки не обновляются). Актуальная дата, по которой вы получили информацию сохраняется в обработчике после вызова getResult() и ее можно получить так: */ $result_date = $resource->getResultDate(); } catch (\Exception $e) { // Обработка исключения }
一段时间内的汇率动态
<?php try { $resource = new \CBR\CurrencyPeriod(); $result = $resource // Даты "c" и "по" в установленном формате ->setDateFormat('d/m/Y') ->setInterval('20/06/2015', '20/07/2015') ->setDateFormat('Y-m-d') ->setInterval('2015-06-20', '2015-07-20') // Код валюты в формате Банка России ->setCurrency('R01535') // Выполнение запроса ->request() // Получение необработанного ответа ->getResultXML(); // Получение обработанного ответа ->getResult(); /* Вернется именованный массив Ключи - дата в формате, установленном через >setDateFormat() */ } catch (\Exception $e) { // Обработка исключения }