跳到主要内容

เนื้อหาภาษาไทย / 泰语内容

系统指南 内容已审核

JSON คืออะไร? ทำไมต้องใช้?

JSON (JavaScript Object Notation) เป็นรูปแบบข้อมูลที่ใช้ในการแลกเปลี่ยนข้อมูลระหว่างระบบต่างๆ โดยมีโครงสร้างที่อ่านง่าย น้ำหนักเบา และรองรับหลายภาษาโปรแกรมมิ่ง...

JSON คืออะไร? ทำไมต้องใช้?

ในโลกของการพัฒนา API และ Web Services, JSON (JavaScript Object Notation) เป็นสิ่งที่ขาดไม่ได้เลยครับ ในบทนี้ เราจะมาทำความเข้าใจกันว่า JSON คืออะไร มีโครงสร้างอย่างไร และทำไมมันถึงได้รับความนิยมอย่างมากในการรับส่งข้อมูลระหว่าง Client และ Server

JSON คืออะไร?

JSON คือรูปแบบข้อมูล (data format) ที่ใช้ในการแลกเปลี่ยนข้อมูลระหว่างระบบต่างๆ โดยมีจุดเด่นคือ อ่านง่าย เข้าใจง่าย และเครื่องคอมพิวเตอร์สามารถประมวลผลได้อย่างรวดเร็ว ถึงแม้ชื่อจะบอกว่าเป็น JavaScript Object Notation แต่จริงๆ แล้ว JSON เป็นรูปแบบข้อมูลที่เป็นกลาง (language-agnostic) นั่นหมายความว่าสามารถใช้งานได้กับภาษาโปรแกรมมิ่งหลากหลายภาษา ไม่ว่าจะเป็น PHP, JavaScript, Python, Java และอื่นๆ

ลองนึกภาพว่าคุณต้องการส่งข้อมูลเกี่ยวกับผู้ใช้ (User) ไปยัง Server ข้อมูลนี้อาจประกอบด้วย ชื่อ, นามสกุล, อีเมล และอายุ JSON จะช่วยจัดระเบียบข้อมูลเหล่านี้ให้อยู่ในรูปแบบที่ชัดเจนและเป็นมาตรฐาน

โครงสร้างของ JSON

JSON มีโครงสร้างพื้นฐานที่เรียบง่าย ประกอบด้วยสองส่วนหลักๆ คือ:

  • Objects: คือชุดของคู่ key-value (คีย์-ค่า) ที่อยู่ในเครื่องหมายปีกกา {} แต่ละคู่ key-value จะถูกคั่นด้วยเครื่องหมายจุลภาค ,
  • Arrays: คือรายการของข้อมูล (data elements) ที่อยู่ในเครื่องหมายวงเล็บเหลี่ยม [] ข้อมูลแต่ละตัวใน Array จะถูกคั่นด้วยเครื่องหมายจุลภาค ,

Key (คีย์): คือชื่อของข้อมูล (property name) ที่เป็น String เสมอ และอยู่ในเครื่องหมาย Double Quote " "

Value (ค่า): คือค่าของข้อมูลที่สอดคล้องกับ Key ค่าของ Value สามารถเป็นได้หลายประเภท ดังนี้:

  • String: ข้อความที่อยู่ในเครื่องหมาย Double Quote " " เช่น "John"
  • Number: ตัวเลข (Integer หรือ Floating-point) เช่น 25, 3.14
  • Boolean: ค่าความจริง (True หรือ False) เช่น true, false
  • Null: ค่าว่าง เช่น null
  • Object: JSON Object ซ้อนกัน (Nested Object)
  • Array: JSON Array

ตัวอย่าง JSON Object:

{
  "firstName": "John",
  "lastName": "Doe",
  "age": 30,
  "email": "john.doe@example.com",
  "isStudent": false,
  "address": {
    "street": "123 Main St",
    "city": "Anytown",
    "zipCode": "12345"
  },
  "hobbies": ["reading", "hiking", "coding"]
}

ในตัวอย่างข้างต้น:

  • firstName, lastName, age, email, isStudent, address, และ hobbies คือ Keys
  • "John", "Doe", 30, "john.doe@example.com", false, JSON Object ของ Address และ JSON Array ของ Hobbies คือ Values

ตัวอย่าง JSON Array:

[
  {"name": "Apple", "color": "Red"},
  {"name": "Banana", "color": "Yellow"},
  {"name": "Grapes", "color": "Green"}
]

ในตัวอย่างนี้ เรามี JSON Array ที่เก็บ JSON Objects ของผลไม้แต่ละชนิดไว้

ทำไมต้องใช้ JSON ใน API?

JSON ได้รับความนิยมอย่างมากในการพัฒนา API และ Web Services ด้วยเหตุผลหลายประการ ดังนี้:

  1. อ่านง่ายและเข้าใจง่าย: โครงสร้างของ JSON นั้นเรียบง่าย ทำให้ทั้งมนุษย์และเครื่องจักรสามารถอ่านและเข้าใจข้อมูลได้อย่างรวดเร็ว
  2. น้ำหนักเบา: JSON มีขนาดเล็กกว่า XML (Extensible Markup Language) ซึ่งเป็นอีกรูปแบบข้อมูลที่นิยมใช้กัน ทำให้การรับส่งข้อมูลทำได้รวดเร็วและประหยัด Bandwidth
  3. รองรับหลายภาษาโปรแกรมมิ่ง: JSON เป็นรูปแบบข้อมูลที่เป็นกลาง สามารถใช้งานได้กับภาษาโปรแกรมมิ่งหลากหลายภาษา ทำให้ง่ายต่อการ Integrate ระบบต่างๆ
  4. ง่ายต่อการ Parse: ภาษาโปรแกรมมิ่งส่วนใหญ่มี Library หรือ Function ที่ช่วยในการ Parse (แปลง) JSON String เป็น Object หรือ Array ได้อย่างง่ายดาย
  5. เป็นมาตรฐาน: JSON เป็นรูปแบบข้อมูลที่เป็นมาตรฐาน ทำให้การทำงานร่วมกันระหว่างทีมพัฒนาต่างๆ เป็นไปอย่างราบรื่น

เปรียบเทียบ JSON กับ XML:

ลองดูตัวอย่างข้อมูลผู้ใช้เดียวกันในรูปแบบ JSON และ XML:

JSON:

{
  "firstName": "John",
  "lastName": "Doe"
}

XML:

<user>
  <firstName>John</firstName>
  <lastName>Doe</lastName>
</user>

จากตัวอย่าง จะเห็นได้ว่า JSON มีขนาดเล็กกว่าและอ่านง่ายกว่า XML อย่างชัดเจน นอกจากนี้ XML ยังมีความซับซ้อนในการ Parse มากกว่า JSON อีกด้วย

JSON ใน PHP

PHP มีฟังก์ชันที่รองรับการทำงานกับ JSON อย่างครบถ้วน ได้แก่:

  • json_encode(): ใช้สำหรับแปลง PHP Array หรือ Object เป็น JSON String
  • json_decode(): ใช้สำหรับแปลง JSON String เป็น PHP Array หรือ Object

เราจะมาดูตัวอย่างการใช้งานฟังก์ชันเหล่านี้ในบทถัดไป

สรุป

JSON เป็นรูปแบบข้อมูลที่สำคัญอย่างยิ่งในการพัฒนา API และ Web Services ด้วยโครงสร้างที่เรียบง่าย น้ำหนักเบา และรองรับหลายภาษาโปรแกรมมิ่ง ทำให้ JSON เป็นตัวเลือกที่ได้รับความนิยมอย่างแพร่หลาย ในบทถัดไป เราจะมาเรียนรู้วิธีการสร้าง JSON String ใน PHP และส่ง JSON Response กลับไปยัง Client

Office.in.th Custom Service

想基于此结构开发或定制系统?

Office.in.th 承接企业级 Web Application、API Integration 以及政府/企业管理系统的设计与开发,并提供长期支持。

查看软件开发服务