nabarabane/cbr 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

nabarabane/cbr

最新稳定版本:v2.0.0

Composer 安装命令:

composer require nabarabane/cbr

包简介

Библиотека для получения и парсинга XML-данных ЦБ России о курсах валют.

README 文档

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) {
    // Обработка исключения
}

nabarabane/cbr 适用场景与选型建议

nabarabane/cbr 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.44k 次下载、GitHub Stars 达 6, 最近一次更新时间为 2015 年 07 月 22 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 nabarabane/cbr 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 nabarabane/cbr 我们能提供哪些服务?
定制开发 / 二次开发

基于 nabarabane/cbr 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 1.44k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 6
  • 点击次数: 19
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 6
  • Watchers: 3
  • Forks: 7
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-07-22