naffiq / php-tenge-rates
PHP wrapper for Kazakhstani Official National Bank tenge currency rates
Installs: 3 828
Dependents: 0
Suggesters: 0
Security: 0
Stars: 5
Watchers: 2
Forks: 3
Open Issues: 1
Requires
- rquadling/lalit: ^1.5
Requires (Dev)
- codeclimate/php-test-reporter: ^0.4.4
- phpunit/phpunit: 5.7
This package is auto-updated.
Last update: 2024-11-07 20:45:47 UTC
README
Данный компонент является оберткой для обработки курса от Нацбанка.
Актуальный курс доступен по ссылке http://www.nationalbank.kz/rss/rates.xml
Установка
Предпочтительный способ установки - через composer
$ composer require naffiq/php-tenge-rates
Использование
<?php require __DIR__ . '/vendor/autoload.php'; use naffiq\tenge\CurrencyRates; $rates = new CurrencyRates(); echo $rates->convertToTenge('USD', 100); // 33214 на момент написания примера
Возможные коды валют:
- USD
- RUR
- EUR
Больше видов валют
<?php require __DIR__ . '/vendor/autoload.php'; use naffiq\tenge\CurrencyRatecs; // URL для всех валют содержится в качестве константы в классе CurrencyRates $rates = new CurrencyRates(CurrencyRates::URL_RATES_ALL); echo $rates->convertToTenge('GBP', 100); // 41242 на момент написания примера
Все возможные коды валют:
- AUD
- GBP
- DKK
- AED
- USD
- EUR
- CAD
- CNY
- KWD
- KGS
- LVL
- MDL
- NOK
- SAR
- RUB
- XDR
- SGD
- TRL
- UZS
- UAH
- SEK
- CHF
- EEK
- KRW
- JPY
- BYN
- PLN
- ZAR
- TRY
- HUF
- CZK
- TJS
- HKD
- BRL
- MYR
- AZN
- INR
- THB
- AMD
- GEL
- IRR
- MXN
Прохождение по валютам
Ниже предоставлен пример кода для прохождения по всем валютам.
Класс \naffiq\tenge\CurrencyRates
имлементирует интерфейсы \Countable
и \IteratorAggregate
,
так что с его объектами можно орудовать как с массивами.
<?php require __DIR__ . '/vendor/autoload.php'; use naffiq\tenge\CurrencyRates; $rates = new CurrencyRates(); foreach ($rates as $rate) { /** * @var \naffiq\tenge\Currency $rate */ echo "{$rate->title} - {$rate->price}"; }
Лимит времени запроса
По умолчанию лимит времени запроса стоит 1 секунду. Если вы хотите сменить его, то инициализируйте класс CurrencyRates
со вторым параметром $timeout
.
<?php require __DIR__ . '/vendor/autoload.php'; use naffiq\tenge\CurrencyRates; $rates = new CurrencyRates(CurrencyRates::URL_RATES_MAIN, 10); // $timeout == 10