Q - อยากทราบวิธีการดึงค่า api อัตราการแลกเปลี่ยนสกุลเงิน มาใช้อย่างไรครับ

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
tsukasaz
PHP VIP Members
PHP VIP Members
โพสต์: 21997
ลงทะเบียนเมื่อ: 18/04/2012 9:39 am

Re: Q - อยากทราบวิธีการดึงค่า api มาใช้อย่างไรครับ

โพสต์ที่ยังไม่ได้อ่าน โดย tsukasaz »

จากโค้ดเราไม่ได้ echo หรือ print อะไร มันก็ไม่แสดงค่าอะไรอยู่แล้วครับ ลองเอาตัวแปร $response กับ $err มา print_r ดูหน่อยครับ ว่าได้อะไรไหม
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)
ภาพประจำตัวสมาชิก
birdkritsna
PHP Super Member
PHP Super Member
โพสต์: 234
ลงทะเบียนเมื่อ: 16/09/2019 9:57 am

Re: Q - อยากทราบวิธีการดึงค่า api มาใช้อย่างไรครับ

โพสต์ที่ยังไม่ได้อ่าน โดย birdkritsna »

ผมใช้โค๊ดตามด้านบนเลยครับ ไม่แน่ใจว่าใช้ถูกหรือเปล่าครับ
01.jpg
ภาพประจำตัวสมาชิก
birdkritsna
PHP Super Member
PHP Super Member
โพสต์: 234
ลงทะเบียนเมื่อ: 16/09/2019 9:57 am

Re: Q - อยากทราบวิธีการดึงค่า api มาใช้อย่างไรครับ

โพสต์ที่ยังไม่ได้อ่าน โดย birdkritsna »

tsukasaz เขียน:จากโค้ดเราไม่ได้ echo หรือ print อะไร มันก็ไม่แสดงค่าอะไรอยู่แล้วครับ ลองเอาตัวแปร $response กับ $err มา print_r ดูหน่อยครับ ว่าได้อะไรไหม
02.jpg

โค้ด: เลือกทั้งหมด

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://apigw1.bot.or.th/bot/public/Stat-ReferenceRate/v2/MONTHLY_REF_RATE/?start_period=2019-08-19&end_period=2019-09-20",
  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(
    "accept: application/json",
    "x-ibm-client-id: lR4gQ7fV7sQ5xQ6wH5nM2hL2mK3uN6wG4jA1dV2wD3cV1nE2uO"
  ),
));


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

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

curl_close($curl);
ภาพประจำตัวสมาชิก
tsukasaz
PHP VIP Members
PHP VIP Members
โพสต์: 21997
ลงทะเบียนเมื่อ: 18/04/2012 9:39 am

Re: Q - อยากทราบวิธีการดึงค่า api มาใช้อย่างไรครับ

โพสต์ที่ยังไม่ได้อ่าน โดย tsukasaz »

โค้ดที่ใช้มันเป็นโค้ดตัวอย่าง น่าจะต้องสมัครสมาชิกของเว็บ แล้วเอา client id ของตัวเองมาใช้ครับ
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)
ภาพประจำตัวสมาชิก
birdkritsna
PHP Super Member
PHP Super Member
โพสต์: 234
ลงทะเบียนเมื่อ: 16/09/2019 9:57 am

Re: Q - อยากทราบวิธีการดึงค่า api มาใช้อย่างไรครับ

โพสต์ที่ยังไม่ได้อ่าน โดย birdkritsna »

tsukasaz เขียน:โค้ดที่ใช้มันเป็นโค้ดตัวอย่าง น่าจะต้องสมัครสมาชิกของเว็บ แล้วเอา client id ของตัวเองมาใช้ครับ
สมัครมาแล้วครับ ดึงข้อมูลออกมาได้แล้วครับผม
03.jpg
Q ไม่ทราบว่าจะดึงข้อมูลแค่บางส่วนจากรูปที่วงไว้ มาเก็บในฐานข้อมูลได้อย่างไรครับ
ภาพประจำตัวสมาชิก
tsukasaz
PHP VIP Members
PHP VIP Members
โพสต์: 21997
ลงทะเบียนเมื่อ: 18/04/2012 9:39 am

Re: Q - อยากทราบวิธีการดึงค่า api มาใช้อย่างไรครับ

โพสต์ที่ยังไม่ได้อ่าน โดย tsukasaz »

ข้อมูลมันเป็นรูปบบ JSON ต้องแปลงเป็น array โดยใช้คำสั่ง json_decode แล้วเอา array มาถอดค่าอีกทีนึง
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41241
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: Q - อยากทราบวิธีการดึงค่า api มาใช้อย่างไรครับ

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

tsukasaz เขียน:ข้อมูลมันเป็นรูปบบ JSON ต้องแปลงเป็น array โดยใช้คำสั่ง json_decode แล้วเอา array มาถอดค่าอีกทีนึง
ตัวอย่างที่ใกล้เคียง
viewtopic.php?f=72&t=57785
อีกหนึ่งตัวอย่าง
viewtopic.php?p=47817#p47817
viewtopic.php?f=77&t=22137

ใช้คำค้น json_decode ใน บอร์ด mindphp.com
หรือ
ค้นใน Google

โค้ด: เลือกทั้งหมด

site:mindphp.com json_decode 
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41241
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: Q - อยากทราบวิธีการดึงค่า api มาใช้อย่างไรครับ

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

เป็นอย่างไรบ้าง กับคำแนะนำ ที่ให้ไป
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ภาพประจำตัวสมาชิก
birdkritsna
PHP Super Member
PHP Super Member
โพสต์: 234
ลงทะเบียนเมื่อ: 16/09/2019 9:57 am

Re: Q - อยากทราบวิธีการดึงค่า api มาใช้อย่างไรครับ

โพสต์ที่ยังไม่ได้อ่าน โดย birdkritsna »

mindphp เขียน:เป็นอย่างไรบ้าง กับคำแนะนำ ที่ให้ไป
ลองทำตามในกระทู้แล้วครับ ขึ้น error ครับ

โค้ด: เลือกทั้งหมด

<?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=2019-09-19&"
    . "end_period=2019-09-20&"
   . "currency=USD",
  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: 41a7650e-697b-4c11-968b-b982bac08687"
  ),
));


$response = curl_exec($curl);

$err = curl_error($curl);


$result = json_decode($matchs[1], true);
$player_response = json_decode($result['args']['player_response'], true);
$exchange = $player_response['data_detail']['exchange'];
echo print_r($exchange);

curl_close($curl);
หน้าจอ
q4.jpg
q4.jpg (21.73 KiB) Viewed 164 times
รบกวนแนะนำเพิ่มเติมหน่อยครับ ว่าผิดถูกตรงไหนครับผม
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41241
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: Q - อยากทราบวิธีการดึงค่า api อัตราการแลกเปลี่ยนสกุลเงิน มาใช้อย่างไรครับ

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

โค้ด line นี้เอามาจากไหน หมายถึงอะไร

โค้ด: เลือกทั้งหมด

$result = json_decode($matchs[1], true); 
ตัวแปล $matchs ไม่เคยมีการประกาศไว้ก่อนหน้านี้
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 121