آشنایی با JSON

دوستان خوبم میخوام شما رو با ساختارهای اطلاعاتی در برنامه نویسی تحت وب آشنا بکنم و خدمتتون توضیح بدم که چرا باید انواع این ساختارهارو بشناسید و اصلا چه کاربردی دارند و حتی چه تفاوتی با همدیگه دارن

برنامه های کامپیوتری که بر اساس استراتژی Server Base کار میکنند (یعنی یک کامپیوتر به عنوان سرویس دهنده و تعدادی هم سرویس گیرنده) با همدیگه به تبادل اطلاعات می پردازن و معمولا هم در بیشتر مواقع حجم دیتای خارج شده از سرور بیشتر از از کلاینت ها هست و کلاینت ها فقط درخواست ها رو و نهایتا اطلاعات فرمی رو ارسال میکنن ولی سرورها معمولا دیتای زیادی رو به کلاینت های متقاضی ارسال میکنن

همانطور که گفته شد بین کامپیوترها ، داده ها و اطلاعات رد و بدل میشه ، پس برای افزایش کارایی نرم افزارها ما باید با ساختارهای اطلاعاتی آشنا بشیم تا سیستم کارامد تری رو طراحی کنیم.

داده ها و اطلاعات به چند شکل مختلف میتونن ارسال بشن : متن ساده ، بصورت HTML ، بصورت XML , JSON یا ساختارهای دیگه

یعنی ما میتونیم برنامه رو طوری طراحی کنیم که یا اطلاعات به همان شکل و بدون هیچ ساختاری به مروگر ارسال بشه یا قبل از ارسال اطلاعات اونهارو به فرمت خاصی در بیاریم که چندتا از این فرمت ها رو در بالا گفتیم

حالا چرا باید به ساختارها در بیاریم ، آیا این بهتره یا اینکه همونطوری بفرستیم ؟ 

خوب اگه همونطوری به مرورگر بفرستیم ، در سمت مرورگر خیلی سخت میشه تا اطلاعات رو به اختار خاص خودمون در بیاریم و بخش های مختلف اطلاعات رو از هم تفکیک کنیم ، پس این کار عاقلانه نیست و میمونه یکی از ساختارهای گفته شده بالا که خیلی خلاصه میگم JSON از همه بهتر و ساده تر و کم حجم تر و شبیه ساختار داده ای زبان جاوا اسکریپت هست و براحتی میشه با کدهای جاوا اسکریپت یا جی کوئری اطلاعات با این ساختار رو براحتی دریافت کرد و اجزای مختلف اطلاعات رو تفکیک کرد.

ممکنه برای شما سئوال باشه که چرا از HTML استفاده نکنیم؟

سئوال خوبی هست و پاسخ این است که شاید ما نخواهیم غیر از داده های خالص تگ های زیادی رو به اطلاعات خودمون در سمت سرور اضافه کنیم و برای مرورگر ارسال کنیم ، به خاطر اینکه حجم اطلاعات خیلی میره بالا

پس همونطور که گفتم بهترین روش در حال حاضر فرمت JSON هست که شما خیلی راحت اطلاعات خودتون رو بوسیله یک تابع در php میتونید به این ساختار در بیارید و شما هیچ کار اضافی نخواهید کرد .

تابع تبدیل اطلاعات به JSON  در زبان PHP (تبدیل آرایه یا یک متغیر به JSON) :

<?php
$data = array(1 , 2 , 3);
echo json_encode($data);
?>

پس با تابع json_encode شما میتونید مثلا اطلاعاتی که از دیتابیس استخراج کردین رو تبدیل به ساختار JSON کنید و با دستور echo برای مرورگر بفرستید.

تبدیل اطلاعات به json در php

حالا در داخل کدهای html صفحه دریافت کننده میتونید یک اسکریپت بنویسید که این اطلاعات JSONی رو بگیره و با دستورات جی کوئری یا خود جاوا اسکریت اونو نمایش بدید.

من سعی میکنم در پست بعدی ، نحوه دریافت و نمایش رو با یک مثال کامل تری خدمتتون توضیح بدم.

تا پست بعدی خدا نگهدار

در ضمن سئوالات خودتون رو برام ارسال کنید ، خوشحال میشم در حد توان پاسخ بدم

ارادتمند مهدی حسامی