ก่อนจะอธิบายในส่วนของ การใช้งาน API โดย API ย่อมาจาก Application Programming Interface คือการเชื่อมต่อจากระบบหนึ่งไปสู่อีกระบบหนึ่ง หรืออีกอย่างนึงคือ API เป็นตัวประมวลผลซึงมีหน้าที่รับส่งข้อมูลเพื่อทำงานในระบบต่างๆตามที่กำหนดหรือต้องการใช้งาน API นั้นๆ การส่งด้วยวิธี cURL ย่อมาจากคำว่า Client for URLs เป็นคำสั่ง command line ที่ถูกเพิ่มเข้ามาในภาษา PHP ตั้งแต่ vsersion 4.0.2 เป็นต้นมา จุดประสงค์หลักของคำสั่ง cURL ที่ถูกเพิ่มเข้ามาในภาษา PHP ก็เพื่อให้นักพัฒนาสามารถเขียนคำสั่งเพื่อติดต่อสื่อสารกับ Server ซึ่ง phpBBย่อจาก php Bulletin Board เป็นโปรแกรมระบบกระดานสนทนาบนอินเทอร์เน็ตแบบโอเพนซอร์ส ทำงานด้วยภาษาพีเอชพี ควบคู่กับระบบฐานข้อมูล

รูปแบบ การส่งข้อมูล ด้วย วิธี curl

โดยมีสิ่งที่ควรรู้คือ 

  1. url api ที่ต้องการใช้งาน
  2. รูปแบบข้อมูลที่ต้องการส่ง
  3. ต้องมีความเข้าใจเรื่อง array กับ object array

การใช้งาน curl จะมี 4 ขั้นตอนคือ

  1. สร้าง curl resource ด้วยฟังก์ชัน curl_init()
  2. set option ให้ curl resource ด้วยฟังก์ชัน curl_setopt()
  3. Execute curl resource ด้วยฟังก์ชัน curl_exec()
  4. close curl resource ด้วยฟังก์ชัน curl_close()
     $curl = curl_init();

        curl_setopt_array($curl, array(
            CURLOPT_URL => 'url',//string ของ url ที่ต้องการ
            CURLOPT_RETURNTRANSFER => true,//1,true ค่าเป็น 1 หมายถึง return ค่ากลับมาในรูป string
            CURLOPT_ENCODING => '',
            CURLOPT_MAXREDIRS => 10,
            CURLOPT_TIMEOUT => 0,//เวลานานที่สุดที่ให้ curl ฟังก์ชันทำงาน
            CURLOPT_FOLLOWLOCATION => true,
            CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
            CURLOPT_CUSTOMREQUEST => 'POST',ประเภทการส่ง
            CURLOPT_POSTFIELDS => '{"name": "ทดสอบ"}',//ข้อมูลที่จะส่งไป
            CURLOPT_HTTPHEADER => array(
                'Authorization: Bearer {Authorization Key}',
                'Content-Type: application/json'
            ),//	array ที่เก็บค่า http header
        ));

        $response = curl_exec($curl);

        curl_close($curl);

        $response =  json_decode($response); แปลง string ที่ได้เป็น object
        

 

ผลลัพธ์

ผลลัพธ์

 

 

ประโยชน์ของการส่ง API :

  1. ช่วยเป็นสื่อกลางส่งข้อมูลข้าม Server
  2. ไม่ต้องทำงานข้ามเว็บไซต์ เพียงติดตั้ง API และใช้งานในเว็บไซต์ที่มี API เดียวก็พอ เช่น api สำหรับคำนวนค่าต่างๆ
  3. ผู้ใช้มีความสะดวกสบายมากขึ้น ไม่ต้องเข้าโปรแกรมหรือ tools ในการทำงานให้ซับซ้อน พอมี api สามารถ เรียก api มาใช้งานในระบบต่างๆ ได้

สรุป การใช้งาน curl เป็นหนึ่งในรูปแบบการส่งข้อมูลของภาษา php ซึ่งในส่วนของ CMS phpBB ทำงานด้วยภาษา PHP จึงสามารถนำมาประยุคต์ใช้งานรวมกันได้ จะมีประสิทธฺภาพมาน้อยแค่ไหนขึ้นอยู่กับ api ที่ต้องการใช้งานและวิธีการเขียนของผู้พัฒนาระบบเอง

อ้างอิง

cURL คืออะไร,[ออนไลน์], https://www.codebee.co.th/labs/curl-คืออะไร-วิธีดึงรายละเอ/

cURL กับ PHP ,[ออนไลน์],https://www.mindphp.com/forums/viewtopic.php?t=28246

api คืออะไร,[ออนไลน์], https://www.mindphp.com/คู่มือ/73-คืออะไร/2038-api-คืออะไร.html

phpBB คืออะไร,[ออนไลน์], https://www.mindphp.com/บทความ/24-cms-php/157-phpbb-คืออะไร.html

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
SQL JOIN: การรวมข้อมูลจากหลายตารางในฐานข้อมูล
โดย witsarutt000 พฤ 14 มี.ค. 2024 4:07 pm บอร์ด SQL Knowledge
1
166
พฤ 14 มี.ค. 2024 5:44 pm โดย Sirayu View Topic SQL JOIN: การรวมข้อมูลจากหลายตารางในฐานข้อมูล
PHP การเปลี่ยนแปลงที่สร้างปรากฏการณ์ในโลกของเว็บ
โดย witsarutt000 พฤ 14 มี.ค. 2024 11:17 am บอร์ด PHP Knowledge
0
125
พฤ 14 มี.ค. 2024 11:17 am โดย witsarutt000 View Topic PHP การเปลี่ยนแปลงที่สร้างปรากฏการณ์ในโลกของเว็บ
ปัญหา Harddisk ขึ้น 100% เวลาเซฟไฟล์ หรือภาพ จะค้่างที่หน้าแท๊บ Expolorer
โดย Thanavat_n พ 13 มี.ค. 2024 11:02 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
5
270
พ 13 มี.ค. 2024 1:34 pm โดย Thanavat_n View Topic ปัญหา Harddisk ขึ้น 100% เวลาเซฟไฟล์ หรือภาพ จะค้่างที่หน้าแท๊บ Expolorer
ตู้รองเท้า ไอเท็มวิเศษช่วยจัดระเบียบคอลเลกชันรองเท้าคู่โปรด
โดย @Foretoday อ 12 มี.ค. 2024 1:46 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
184
อ 12 มี.ค. 2024 1:46 pm โดย @Foretoday View Topic ตู้รองเท้า ไอเท็มวิเศษช่วยจัดระเบียบคอลเลกชันรองเท้าคู่โปรด
แนะนำสถานที่น่าเที่ยวในจังหวัดชุมพรพร้อมวิธีการเดินทาง
โดย witsarutt000 จ 11 มี.ค. 2024 6:14 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
142
จ 11 มี.ค. 2024 6:14 pm โดย witsarutt000 View Topic แนะนำสถานที่น่าเที่ยวในจังหวัดชุมพรพร้อมวิธีการเดินทาง
ย้าย VM ข้าม Host ด้วย scp กรณีศึกษา Vmware ESXI
โดย mindphp อ 10 มี.ค. 2024 4:36 am บอร์ด Linux - Web Server
0
239
อ 10 มี.ค. 2024 4:36 am โดย mindphp View Topic ย้าย VM ข้าม Host ด้วย scp กรณีศึกษา Vmware ESXI
IP และ vpn (VMware)
โดย ballmykids อ 10 มี.ค. 2024 2:35 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
2
203
จ 11 มี.ค. 2024 3:19 pm โดย ballmykids View Topic IP และ vpn (VMware)
แบบนี้ต้องทำยังไง ในกรณีที่ Server เดิมเราได้ทำการ Raid 1 กับ HDD 2 ลูกแรกแล้ว
โดย Anonymous ศ 08 มี.ค. 2024 7:02 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
166
ศ 08 มี.ค. 2024 8:12 pm โดย mindphp View Topic แบบนี้ต้องทำยังไง ในกรณีที่ Server เดิมเราได้ทำการ Raid 1 กับ HDD 2 ลูกแรกแล้ว