ben-gibson / bryn-fallback-calculator

An exchange rate calculator that defers calculation to its registered calculators in priority order until an exchange rate is successfully returned.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Bryn - Fallback Calculator

Latest Version on Packagist Software License Build Status Total Downloads

A fallback calculator for Bryn that defers to registered calculators in priority order until an exchange rate is returned or they all fail.

Install

Use composer to install this library.

$ composer require ben-gibson/bryn-fallback-calculator

Usage

<?php
    
require 'vendor/autoload.php';
    
$calculator = new \Gibbo\Bryn\Calculator\Fallback\FallbackCalculator();
    
$calculator->registerCalculator(Gibbo\Bryn\Calculator\Yahoo\YahooCalculator::default());
$calculator->registerCalculator(Gibbo\Bryn\Calculator\ECB\ECBCalculator::default());
    
$exchangeRate = $calculator->getRate(
    new \Gibbo\Bryn\Exchange(
        \Gibbo\Bryn\Currency::GBP(),
        \Gibbo\Bryn\Currency::USD()
    )
);
    
echo $exchangeRate;
echo $exchangeRate->convert(550);
echo $exchangeRate->flip()->convert(550);
    
/**
 * OUTPUTS:
 *
 * 1 GBP(£) = 1.25 USD($)
 * 686.2295
 * 440.814
 */

Change log

Please see CHANGELOG for more information what has changed recently.

Testing

$ composer test

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email ben.gibson.2011@gmail.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

About

An exchange rate calculator that defers calculation to its registered calculators in priority order until an exchange rate is successfully returned.


Languages

Language:PHP 87.9%Language:Shell 12.1%