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.

v0.0.2 2017-04-08 12:32 UTC

This package is not auto-updated.

Last update: 2024-04-27 17:53:40 UTC


README

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.