شناسایی دستگاه کاربر در لاراول
شناسایی دستگاه کاربر (موبایل ، دسکتاپ و تبلت) در لاراول
1398-01-30
نحوه لاگین کردن در سایت با اکانت گوگل در لاراول
نحوه لاگین کردن در سایت با اکانت گوگل در لاراول
1398-02-08

آموزش نحوه تبدیل آرایه به json در php همراه با مثال

آموزش نحوه تبدیل آرایه به json در php

آموزش نحوه تبدیل آرایه به json در php

نحوه تبدیل آرایه به json در php همراه با مثال ، در این مقاله نحوه تبدیل آرایه php به json را به شما آموزش خواهیم داد. اغلب از JSON برای خواندن داده ها از یک وب سرور و نمایش آن ها در یک صفحه وب استفاده می شود.هنگام تبادل داده ها بین مرورگر و سرور، داده ها فقط می توانند به شکل متن باشند.فرمت JSON متن می باشد و ما می توانیم هر شیء جاوا اسکریپت را به فرمت JSON تبدیل کنیم و JSON را به یک سرور ارسال کنیم. ما همچنین می توانیم هر JSON دریافت شده از سرور را به اشیاء جاوا اسکریپت تبدیل کنیم.

تبدیل آرایه به json در php

PHP دارای تعدادی توابع درونی برای مدیریت JSON می باشد. اشیاء و آرایه در PHP می توانند با استفاده از تابع json_encode() به JSON تبدیل شوند.تابع json_encode() یه رشته حاوی JSON معادل با مقداری که به ان پاس داده شده است را بر می گرداند.در ادامه با یک مثال نحوه ی کار این تابع را به شما نشان خواهیم داد.

سینتکس تابع json_encode() :

json_encode ( mixed $value [, int $options = 0 [, int $depth = 512 ]] ) : string

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

<?php

$colors         =   ['Red', 'Blue', 'Green', 'yellow', 'pink'];
colorsJson     =   json_encode($colors);

echo $colorsJson ."\n";

خروجی کدهای بالا را در ادامه مشاهده می کنید:

آموزش نحوه تبدیل آرایه به json در php

در یک رشته JSON ، یک آرایه عددی php به لیترال آرایه ای ترجمه شده است.اگر ما بخواهیم خروجی به صورت Object نمایش داده شود می توانیم از گزینه JSON_FORCE_OBJECT استفاده کنیم.

مثال:

<?php

$colors         =   ['Red', 'Blue', 'Green', 'yellow', 'pink'];
$colorsJson     =   json_encode($colors, JSON_FORCE_OBJECT);

echo $colorsJson ."\n";

خروجی کدهای بالا را در ادامه مشاهده می کنید:

آموزش نحوه تبدیل آرایه به json در php

تبدیل آرایه انجمنی (Associative Array) به JSON

در ادامه یک مثال از تبدیل آرایه جفت کلید-مقدار به json آورده شده است:

<?php

$data       =   ['Iran' => 'Tehran', 'Japan' => 'Tokyo', 'Spain' => 'Madrid'];
$jsonData   = json_encode($data);

echo $jsonData ."\n";

خروجی کدهای بالا را در ادامه مشاهده می کنید:

آموزش نحوه تبدیل آرایه به json در php

تابع json_encode() در صورت موفقیت (success) یک رشته کدگذاری شده JSON بر می گرداند و در صورت شکست (failure) مقدار False بر می گرداند.

نمایش تابع json_encode() با برخی گزینه ها یا پارامترها

<?php

$a = array('<foo>',"'bar'",'"baz"','&amp;blong&amp;', "\xc3\xa9");

echo "Normal: ",  json_encode($a), "\n";
echo "Tags: ",    json_encode($a, JSON_HEX_TAG), "\n";
echo "Apos: ",    json_encode($a, JSON_HEX_APOS), "\n";
echo "Quot: ",    json_encode($a, JSON_HEX_QUOT), "\n";
echo "Amp: ",     json_encode($a, JSON_HEX_AMP), "\n";
echo "Unicode: ", json_encode($a, JSON_UNESCAPED_UNICODE), "\n";
echo "All: ",     json_encode($a, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE), "\n\n";

$b = array();

echo "Empty array output as array: ", json_encode($b), "\n";
echo "Empty array output as object: ", json_encode($b, JSON_FORCE_OBJECT), "\n\n";

$c = array(array(1,2,3));

echo "Non-associative array output as array: ", json_encode($c), "\n";
echo "Non-associative array output as object: ", json_encode($c, JSON_FORCE_OBJECT), "\n\n";

$d = array('foo' => 'bar', 'baz' => 'long');

echo "Associative array always output as object: ", json_encode($d), "\n";
echo "Associative array always output as object: ", json_encode($d, JSON_FORCE_OBJECT), "\n\n";

در کدهای بالا ما پارامتر گزینه ها (options) را به تابع json_encode() پاس دادیم

گزینه های (options) مختلف Bitmask متشکل از JSON_HEX_QUOT ، JSON_HEX_TAG ، JSON_HEX_AMP ، JSON_HEX_APOS ، JSON_NUMERIC_CHECK ، JSON_PRETTY_PRINT ، JSON_UNESCAPED_SLASHES ، JSON_FORCE_OBJECT ، JSON_PRESERVE_ZERO_FRACTION ، JSON_UNESCAPED_UNICODE ، JSON_PARTIAL_OUTPUT_ON_ERROR ، JSON_UNESCAPED_LINE_TERMINATORS ، JSON_THROW_ON_ERROR می باشد.

خروجی کدهای بالا را در ادامه مشاهده می کنید:

آموزش نحوه تبدیل آرایه به json در php

دیدگاهتان را بنویسید

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