วิธีสมัครและใช้งาน api อัตราแลกเปลี่ยนเงินตรา จาก ธนาคารแห่งประเทศไทย ด้วย php

Post a reply

Smilies
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: วิธีสมัครและใช้งาน api อัตราแลกเปลี่ยนเงินตรา จาก ธนาคารแห่งประเทศไทย ด้วย php

วิธีสมัครและใช้งาน api อัตราแลกเปลี่ยนเงินตรา จาก ธนาคารแห่งประเทศไทย ด้วย php

by birdkritsna » 20/09/2019 4:13 pm

API ย่อมาจาก Application Programming Interface คือช่องทางการเชื่อมต่อระหว่างเว็บไซต์หนึ่งไปยังอีกเว็บไซต์หนึ่ง หรือเป็นการเชื่อมต่อระหว่าผู้ใช้งานกับ Server หรือจาก Server เชื่อมต่อไปหา Server ซึ่ง API นี้เปรียบได้เป็น ภาษาคอมพิวเตอร์ ที่ทำให้คอมพิวเตอร์สามารถสื่อสารและแลกเปลี่ยนข้อมูลกันได้อย่างอิสระ

ขั้นตอนง่าย ๆ ลองทำตามกันดูเลยครับ

1.สมัครสมาชิกในเว็บ https://apiportal.bot.or.th/bot/public/ ธนาคารแห่งประเทศไทยก่อนเลย คลิกเพื่อสมัคร โดยกรอกข้อมูลและยืนยันอีเมลให้เรียบร้อย
01.jpg
2.เมื่อเราสมัครสมาชิก เข้าสู่ระบบเรียบร้อยแล้ว ให้ไปที่เมนู Apps >> Create new App
02.jpg
3.กรอกข้อมูลในช่องให้เรียบร้อยแล้วกด Submit
3.jpg
3.jpg (95.95 KiB) Viewed 596 times
4.เมื่อกดปุ่ม Submit แล้วจะเด้งไปมาหน้าจอนี้ จะมี Client Secret และ Client ID ให้กดติ๊ก Show Client Secret แล้วทำการก็อปปี้หรือจดบันทึกเอาไว้
4.jpg
5.ต่อไปกดไปที่ API Products >> Exchange Rates (2.0.1) (ในตัวอย่างนี้คือ Exchange Rate 2.0.1 ภายในมี API ให้ใช้งานสองตัว)
5.jpg
5.jpg (124.23 KiB) Viewed 596 times
6.คลิกที่ปุ่ม Subscribe แล้วเลือกแอพพลิเคชั่นที่เพิ่งลงทะเบียนไป จากนั้นกดเลือกแถบซ้าย จะเป็นอัตราแลกเปลี่ยนเงินไทยเป็นเงินต่างประเทศ ในที่นี้เราจะเลือก ดังรูป
6.jpg
6.jpg (114.1 KiB) Viewed 596 times
ึ7.ก็จะเข้ามาในส่วนของ Code ให้เลือกเป็น PHP แล้วนำโค๊ดมาใช้
7.jpg

Code: Select all

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://apigw1.bot.or.th/bot/public/Stat-ExchangeRate/v2/DAILY_AVG_EXG_RATE/?start_period=REPLACE_THIS_VALUE&end_period=REPLACE_THIS_VALUE&currency=REPLACE_THIS_VALUE",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => array(
    "x-ibm-client-id: REPLACE_THIS_KEY"
  ),
));

echo print_r($response);
echo print_r($err);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
ในส่วนของข้อมูลที่ต้องใส่ก่อนใช้งานโค๊ด
1. x-ibm-client-id : ให้กรอก Cilent ID หรือ Client Secret ที่ได้มาจากขั้นตอนที่ 4
2. start_period และ end_period รูปแบบการใส่จะเป็น yyyy-mm-dd ให้กรอกตามวันที่ต้องการ
3. currency ใส่หน่วยสกุลเงินของต่างประเทศที่ต้องการ เช่น currency=USD",
หรือถ้าต้องการแสดงสกุลเงินทั้งหมด ให้ลบค่า currency ออก

Code: Select all

CURLOPT_URL => "https://apigw1.bot.or.th/bot/public/Stat-ExchangeRate/v2/DAILY_AVG_EXG_RATE/?start_period=REPLACE_THIS_VALUE&end_period=REPLACE_THIS_VALUE&currency=REPLACE_THIS_VALUE",
ตัวอย่าง เมื่อใส่กรอก start_period และ end_period และใส่ currency = USD",
ผลลัพธ์ ตามนี้
8.jpg
ข้อมูลที่ได้จะเป็นในรูปแบบของ json ให้ศึกษาแนวทางวิธีการนำไปใช้งาน ตามกระทู้นี้เลยครับ viewtopic.php?f=72&t=57785

Reference Links :
https://apiportal.bot.or.th/bot/public/

Top