Funkcje JSON
PHP Manual

json_encode

(PHP 5 >= 5.2.0, PECL json >= 1.2.0)

json_encodeZwraca JSON reprezentujący wartość

Opis

string json_encode ( mixed $wartość [, int $opcje = 0 ] )

Zwraca łańcuch JSON reprezentujący wartość.

Parametry

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.

Zwracane wartości

W przypadku powodzenia zwraca zakodowany string JSON.

Rejestr zmian

Wersja Opis
5.3.0 Dodano parametr opcje.
5.2.1 Dodano do JSON obsługę kodowania podstawowych typów.

Przykłady

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($bJSON_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($cJSON_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($dJSON_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"}

Notatki

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.

Zobacz też:


Funkcje JSON
PHP Manual