✅ WEB і WordPress новини, теми, плагіни. Тут ми ділимося порадами і кращими рішеннями для сайтів.

API курсів валют з конвертацією валют у PHP

45

Нещодавно я працював над проектом клієнта, де мені потрібно було збирати платежі від користувачів у всьому світі. Клієнт, який використовує Razorpay для отримання онлайн-платежів. У Razorpay вам потрібно перевести курс іноземної валюти в INR (індійські рупії), а потім стягнути плату. Для виконання цього завдання я хотів отримати API курсів іноземних валют, який я знайшов в API курсів валют.

API курсів валют – це послуга з відкритим кодом для поточних та історичних курсів іноземних валют, опублікована Європейським центральним банком.

У цій статті я покажу вам, як користуватися API курсів валют та отримувати суму іноземної валюти.

Як користуватися API курсів валют

Ця послуга надає кінцеві точки API. Як тільки ми потрапляємо в кінцеві точки разом із параметрами, вони повертають відповідну відповідь.

Для того, щоб дати виклики API та відповісти на обробку, ми можемо вибрати Guzzle (PHP HTTP-клієнт) або cURL. Обидва вони забезпечують простий і надійний спосіб взаємодії з API.

Почнемо спочатку з Guzzle. Встановіть Guzzle через композитор за допомогою наступної команди:

composer require guzzlehttp/guzzle

Після встановлення ви можете здійснити виклик API і отримати відповідь, написавши код нижче.

<?php
require_once 'vendor/autoload.php';
 
use GuzzleHttpClient;
 
$client = new Client([
    // Base URI is used with relative requests
    'base_uri' => 'https://api.exchangeratesapi.io/',
]);
 
// get all rates
$response = $client->request('GET', 'latest', [
    'query' => [
        'base' => 'USD',
    ]
]);
 
if($response->getStatusCode() == 200) {
    $body = $response->getBody();
    $arr_body = json_decode($body);
    print_r($arr_body);
}

Наведений вище код надає вам курс конвертації доларів США для інших валют. Користувач може встановити інші символи валюти за допомогою клавіші ‘base’.

Таким же чином користувачі отримують коефіцієнт конверсії з однієї валюти. Скажімо, вам потрібна ціна INR у доларах США.

$response = $client->request('GET', 'latest', [
    'query' => [
        'base' => 'USD',
        'symbols' => 'INR',
    ]
]);

API курсів валют також надає вам історичні дані. У цьому випадку вам потрібно передати значення дати для ключів ‘start_at’ та ‘end_at’.

$response = $client->request('GET', 'history', [
    'query' => [
        'base' => 'USD',
        'symbols' => 'INR',
        'start_at' => '2020-01-01',
        'end_at' => '2020-01-20'
    ]
]);

Взаємодійте з API, використовуючи cURL

Я вважав за краще використовувати Guzzle для взаємодії з API. Але якщо хтось хоче використовувати cURL, тоді він може скористатися наведеним нижче кодом. Переконайтеся, що ви увімкнули розширення cURL на своєму сервері.

<?php
$url = "https://api.exchangeratesapi.io/latest?base=USD";
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);
$response = curl_exec($ch);
$arr_result = json_decode($response);
print_r($arr_result);

Вся справа в отриманні курсів іноземних валют у PHP. Сподіваюся, ви це розумієте і можете використовувати його у своїй розробці. Я хотів би почути ваші думки чи пропозиції у розділі коментарів нижче.

Пов’язані статті

Джерело запису: artisansweb.net

Цей веб -сайт використовує файли cookie, щоб покращити ваш досвід. Ми припустимо, що з цим все гаразд, але ви можете відмовитися, якщо захочете. Прийняти Читати далі