Skip to content

Faridbabayev001/cbar-currency

Repository files navigation

PHP library to work with CBAR currency rates

Requirements

PHP 7.4 or higher, simplexml and bcmath extensions.

Installation

Require this package with composer.

composer require faridbabayev/cbar-currency

Copy the package config to your local config with the publish command:

php artisan vendor:publish --provider="FaridBabayev\CBARCurrency\CBARCurrencyServiceProvider"

Laravel without auto-discovery:

If you don't use auto-discovery, add the ServiceProvider to the providers array in config/app.php

FaridBabayev\CBARCurrency\CBARCurrencyServiceProvider::class

If you want to use the facade to log messages, add this to your facades in app.php:

'CBAR' => \FaridBabayev\CBARCurrency\Facades\CBAR::class

Usage

Fetching currencies from CBAR

Instantiate FaridBabayev\CBARCurrency\Facades\CBAR with date you want to fetch currencies for. If you don't pass a date, current date will be used:

use FaridBabayev\CBARCurrency\Facades\CBAR;

$currencies = CBAR::currencies(); // this will fetch currencies for current date
$currencies = CBAR::from("18.02.2022")->currencies(); // this will fetch currencies for 18.02.2022

You can pass dates in any format that acceptable by PHP's strtotime() function. For example, 20.10.2022, 10/20/2022, 2022-10-20, today, yesterday, -1 week, -1 year, 15 December 2020, last Friday.

Use available drivers

You can change default driver from env file.

CBAR_CONNECTION=database
  1. Default driver is sync:
use FaridBabayev\CBARCurrency\Facades\CBAR;

$currencies = CBAR::currencies(); // this will fetch currencies for current date
$currencies = CBAR::from("18.02.2022")->currencies(); // this will fetch currencies for 18.02.2022
  1. You can use database driver. Before use database driver first run php artisan migrate for currenciestable:
use FaridBabayev\CBARCurrency\Facades\CBAR;

$currencies = CBAR::driver('database')->currencies(); // this will fetch currencies for current date
$currencies = CBAR::driver('database')->from("18.02.2022")->currencies(); // this will fetch currencies for 18.02.2022
  1. You can use file driver:
use FaridBabayev\CBARCurrency\Facades\CBAR;

$currencies = CBAR::driver('file')->currencies(); // this will fetch currencies for current date
$currencies = CBAR::driver('file')->from("18.02.2022")->currencies(); // this will fetch currencies for 18.02.2022

Converting currency

All available currencies and currency codes can be found in CBAR website

Converting amount to and from AZN

Library supports converting given amount in foreign currency to AZN with given date's rates:

$currencies = CBAR::currencies();
$currencies->toAZN('USD')->convert(); // returns AZN equivalent of 1.00 USD with today's currencies
$currencies->toAZN('USD')->convert(25.53); // returns AZN equivalent of 25.53 USD with today's currencies

You can also convert given amount in AZN to any available foreign currency:

$currencies = CBAR::currencies();
$currencies->fromAZN('USD')->convert(); //  returns USD equivalent of 1.00 AZN with today's currencies
$currencies->fromAZN('USD')->convert(25.53); //  returns USD equivalent of 25.53 AZN with today's currencies

Testing

composer test

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

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

Credits

License

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

About

PHP library to work with CBAR currencies

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages