(PHP 5 >= 5.2.0, PECL json >= 1.2.0)
json_encode — Zwraca JSON reprezentujący wartość
Zwraca łańcuch JSON reprezentujący
wartość
.
wartość
wartość
zostanie zakodowana i może być dowolnego typu,
wykluczając zasoby.
Ta funkcja działa tylko na danych zakodowanych w formacie UTF-8.
opcje
Struktura bitów składająca się z JSON_HEX_QUOT
,
JSON_HEX_TAG
,
JSON_HEX_AMP
,
JSON_HEX_APOS
,
JSON_FORCE_OBJECT
.
W przypadku powodzenia zwraca zakodowany string JSON.
Wersja | Opis |
---|---|
5.3.0 |
Dodano parametr opcje .
|
5.2.1 | Dodano do JSON obsługę kodowania podstawowych typów. |
Przykład #1 Przykład json_encode()
<?php
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echo json_encode($arr);
?>
Powyższy przykład wyświetli:
{"a":1,"b":2,"c":3,"d":4,"e":5}
Przykład #2 Przykład json_encode() pokazuje zastosowanie parametru: opcje
<?php
$a = array('<foo>',"'bar'",'"baz"','&blong&');
echo "Standardowo: ", json_encode($a), "\n";
echo "Znaczniki: ", json_encode($a,JSON_HEX_TAG), "\n";
echo "Apostrofy: ", json_encode($a,JSON_HEX_APOS), "\n";
echo "Cudzysłowy: ", json_encode($a,JSON_HEX_QUOT), "\n";
echo "Znaki et (etki): ", json_encode($a,JSON_HEX_AMP), "\n";
echo "Wszystkie opcje: ", json_encode($a,JSON_HEX_TAG|JSON_HEX_APOS|JSON_HEX_QUOT|JSON_HEX_AMP), "\n\n";
$b = array();
echo "Pusta tablica zwracana jako tablica: ", json_encode($b), "\n";
echo "Pusta tablica zwracana jako obiekt: ", json_encode($b, JSON_FORCE_OBJECT), "\n\n";
$c = array(array(1,2,3));
echo "Nieasocjacyjna tablica zwracana jako tablica: ", json_encode($c), "\n";
echo "Nieasocjacyjna tablica zwracana jako obiekt: ", json_encode($c, JSON_FORCE_OBJECT), "\n\n";
$d = array('foo' => 'bar', 'baz' => 'long');
echo "Asocjacyjna tablica zwracana zawsze jako obiekt: ", json_encode($d), "\n";
echo "Asocjacyjna tablica zwracana zawsze jako obiekt: ", json_encode($d, JSON_FORCE_OBJECT), "\n\n";
?>
Powyższy przykład wyświetli:
Standardowo: ["<foo>","'bar'","\"baz\"","&blong&"] Znaczniki: ["\u003Cfoo\u003E","'bar'","\"baz\"","&blong&"] Apostrofy: ["<foo>","\u0027bar\u0027","\"baz\"","&blong&"] Cudzysłowy: ["<foo>","'bar'","\u0022baz\u0022","&blong&"] Znaki et (etki): ["<foo>","'bar'","\"baz\"","\u0026blong\u0026"] Wszystkie opcje: ["\u003Cfoo\u003E","\u0027bar\u0027","\u0022baz\u0022","\u0026blong\u0026"] Pusta tablica zwracana jako tablica: [] Pusta tablica zwracana jako obiekt: {} Nieasocjacyjna tablica zwracana jako tablica: [[1,2,3]] Nieasocjacyjna tablica zwracana jako obiekt: {"0":{"0":1,"1":2,"2":3}} Asocjacyjna tablica zwracana zawsze jako obiekt: {"foo":"bar","baz":"long"} Asocjacyjna tablica zwracana zawsze jako obiekt: {"foo":"bar","baz":"long"}
Informacja:
W przypadku wystąpienia błędu kodowania, funkcja json_last_error() może być użyta do dokładnego określenia rodzaju błędu.