본문으로 건너뛰기

เนื้อหาภาษาไทย / 태국어 콘텐츠

시스템 가이드 검수 완료된 콘텐츠

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는 엔터프라이즈 웹 애플리케이션, API 연동, 공공/민간 업무 관리 시스템을 설계·개발하며 장기 지원을 제공합니다.

소프트웨어 개발 서비스 보기