PHP code example of tomlankhorst / eurofxref-exchange-provider
1. Go to this page and download the library: Download tomlankhorst/eurofxref-exchange-provider library. Choose the download type require. 2. Extract the ZIP file and open the index.php. 3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
tomlankhorst / eurofxref-exchange-provider example snippets
namespace App\Providers;
use Brick\Money\CurrencyConverter;
use Brick\Money\ExchangeRateProvider;
use GuzzleHttp\Client;
use GuzzleHttp\ClientInterface;
use Illuminate\Container\Container;
use Illuminate\Contracts\Cache\Repository;
use Illuminate\Support\ServiceProvider;
use Psr\SimpleCache\CacheInterface;
use tomlankhorst\EuroFXRefExchangeProvider\EuroProvider;
class MoneyServiceProvider extends ServiceProvider
{
public function register()
{
// PSR-7 HTTP Messages
$this->app->bind(ClientInterface::class, Client::class);
// PSR-16 SimpleCache
$this->app->bind(CacheInterface::class, Repository::class);
// Bind the ExchangeProvider to the EuroProvider with a BaseCurrencyProvider
// wrapper because it is a one-way conversion in this case.
$this->app->bind(ExchangeRateProvider::class, function(Container $app){
$provider = $app->makeWith(EuroProvider::class, [
// Do not forget to set the TTL
'ttl' => config('services.eurofxref.cache.ttl')
]);
return new ExchangeRateProvider\BaseCurrencyProvider($provider, 'EUR');
});
$this->app->singleton(CurrencyConverter::class, function(Container $app){
return new CurrencyConverter($app->make(ExchangeRateProvider::class));
});
}
}