JSON کوتاه‌شده‌ی عبارت «Javascript Object Notation» به معنی «نشان‌گذاری شیء جاوااسکریپت» است. JSON شیوه‌ای است که با کمک آن اشیا و اطلاعات برنامه‌نویسی به متن قابل پردازش توسط رایانه و قابل فهم برای انسان تبدیل می‌شوند.

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

JOSN برای مبحث توسعه ی وب، یک رابط خوب بین PHP و JAVASCRIPT محسوب میشه و برای مبحث برنامه های کاربردی موبایل باز هم JSON یک رابط خوب بین سرور و موبایل محسوب میشه.

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

حالا برای مثال میخواهیم ابتدا یک JOSN بسازیم و بعد آن را پیمایش کنیم، فرض کنید که میخواهیم JOSN زیر را با PHP بسازیم هرچند شما میتوانید خودتون JSON را بنویسید و بعد فقط آن را json_decode کنید.

{
    "name":"Peyman",
    "city":"Esfahan",
    "profession":[
        "php",
        "mysql",
        "ajax",
        "wordpress",
        "ubuntu"
    ]
}

برای ساختن JOSN از آرایه ها کمک میگیریم:

$array = array(
    "name" => "Peyman",
    "city" => "Esfahan",
    "profession" => array(
        "php",
        "mysql",
        "ajax",
        "wordpress",
        "ubuntu"
    )
);
$json = json_encode($array);
var_dump($json);
$json = json_decode($json);
var_dump($json);

میتوانیم JOSN را به دو نوع شئی و آرایه بگیریم:

$array = array(
    "name" => "Peyman",
    "city" => "Esfahan",
    "profession" => array(
        "php",
        "mysql",
        "ajax",
        "wordpress",
        "ubuntu"
    )
);
$json_encoded = json_encode($array);
var_dump($json_encoded);

$json_object_decoded = json_decode($json_encoded);
var_dump($json_object_decoded);
echo $json_object_decoded->name;
echo "<br>";
echo $json_object_decoded->city;
echo "<br>";
echo $json_object_decoded->profession[0];

$json_array_decoded = json_decode($json_encoded, true);
var_dump($json_array_decoded);
echo $json_array_decoded["name"];
echo "<br>";
echo $json_array_decoded["city"];
echo "<br>";
echo $json_array_decoded["profession"][0];

اگر JOSN خودتون را با PHP نساختید اول از همه باید چک کنید که آیا JSON ی را که نوشته اید صحیح هست یا نه در ضمن همانطور که گفتم JOSN میتونه هم در فایل و هم در دیتابیس ذخیره بشه اما در نگاه اول یک string محسوب میشه. برای چک کردن JOSN خودتون به این سایت مراجعه کنید: http://json.parser.online.fr

کار کردن با JOSN بسیار ساده و لذت بخش است و از آنجایی که سرعت بالاتری در انتقال اطلاعات نسبت به XML دارد میتواند جایگزین خوبی برای وب سرویس ها باشد همانطور که گوگل هم از این سرویس علاوه بر XML استفاده میکند.

شئی گرایی فراموش نشود

از آنجایی که نباید شئی گرایی را فراموش کنیم و در این مقاله ی کوچک نتوانستم مساله ای برای شئی گرایی بگنجانم، با معرفی کلاس مفیدی برای JSON و PHP مقاله را به پایان میرسانم این کلاس برای UTF-8 خیلی مناسبه و پیشنهاد میکنم که از این کلاس استفاده کنید:

http://pear.php.net/pepr/pepr-proposal-show.php?id=198

یک پاسخ بدهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *