PHP – جیسون (Json)

PHP و JSON

JSON (JavaScript Object Notation) یک فرمت سبک برای تبادل داده‌ها است که هم برای انسان‌ها قابل خواندن و نوشتن و هم برای ماشین‌ها قابل پردازش و تولید است. این فرمت معمولاً برای ارسال داده‌ها بین سرور و اپلیکیشن وب به عنوان متن استفاده می‌شود.

PHP توابع داخلی برای کار با داده‌های JSON فراهم می‌آورد که استفاده از آن‌ها برای رمزگذاری (encode) و رمزگشایی (decode) داده‌های JSON را ساده می‌کند.

توابع کلیدی

json_encode()

تابع json_encode() برای تبدیل یک متغیر PHP به یک رشته با فرمت JSON استفاده می‌شود. این تابع زمانی که نیاز به ارسال داده از PHP به کلاینت جاوااسکریپت یا ذخیره آن در یک فایل JSON دارید، مفید است.

مثال: رمزگذاری یک آرایه انجمنی

<?php
$age = array("Peter" => 35, "Ben" => 37, "Joe" => 43);
echo json_encode($age);
?>

خروجی:

{"Peter":35,"Ben":37,"Joe":43}

مثال: رمزگذاری یک آرایه ایندکسی

<?php
$cars = array("Volvo", "BMW", "Toyota");
echo json_encode($cars);
?>

خروجی:

["Volvo","BMW","Toyota"]

json_decode()

تابع json_decode() برای تبدیل یک رشته با فرمت JSON به یک متغیر PHP استفاده می‌شود. به طور پیش‌فرض، داده‌های JSON به یک شیء PHP تبدیل می‌شود. همچنین می‌توانید با قرار دادن true به عنوان پارامتر دوم، داده‌ها را به یک آرایه انجمنی تبدیل کنید.

مثال: رمزگشایی داده‌های JSON به شیء PHP

<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj));
?>

مثال: رمزگشایی داده‌های JSON به آرایه انجمنی PHP

<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj, true));
?>

دسترسی به مقادیر رمزگشایی شده

شما می‌توانید مقادیر رمزگشایی شده را از شیء PHP یا آرایه انجمنی به روش‌های زیر دسترسی پیدا کنید:

مثال: دسترسی به مقادیر از یک شیء PHP

<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
echo $obj->Peter;
echo $obj->Ben;
echo $obj->Joe;
?>

مثال: دسترسی به مقادیر از یک آرایه انجمنی PHP

<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
echo $arr["Peter"];
echo $arr["Ben"];
echo $arr["Joe"];
?>

پیمایش مقادیر با استفاده از حلقه foreach

شما می‌توانید با استفاده از حلقه foreach() به مقادیر پیمایش کنید:

مثال: پیمایش مقادیر از یک شیء PHP

<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
foreach($obj as $key => $value) {
  echo $key . " => " . $value . "<br>";
}
?>

مثال: پیمایش مقادیر از یک آرایه انجمنی PHP

<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
foreach($arr as $key => $value) {
  echo $key . " => " . $value . "<br>";
}
?>

پست های مرتبط

مطالعه این پست ها رو از دست ندین!
JavaScript - تاریخ‌ها (Dates)

JavaScript – تاریخ‌ها (Dates)

آبجکت‌های تاریخ (Date) در جاوااسکریپت آبجکت‌های تاریخ در جاوااسکریپت به ما امکان کار با تاریخ و زمان را می‌دهند....

بیشتر بخوانید
JavaScript - آرایه‌های ثابت (Array Const)

JavaScript – آرایه‌های ثابت (Array Const)

جاوااسکریپت: تعریف آرایه با const در سال 2015، جاوااسکریپت کلمه کلیدی مهمی به نام const را معرفی کرد. این...

بیشتر بخوانید
JavaScript - تکرار آرایه‌ها (Array Iteration)

JavaScript – تکرار آرایه‌ها (Array Iteration)

جاوا اسکریپت: تکرار بر روی آرایه‌ها جاوا اسکریپت روش‌های مختلفی برای تکرار (Iteration) بر روی آرایه‌ها ارائه می‌دهد که...

بیشتر بخوانید

نظرات

سوالات و نظراتتون رو با ما به اشتراک بذارید

برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید.