PHP i JSON
Co to jest JSON?
JSON oznacza JavaScript Object Notation i jest składnią do przechowywania i wymiany danych.
Ponieważ format JSON jest formatem tekstowym, można go łatwo wysłać do iz serwera i wykorzystać jako format danych w dowolnym języku programowania.
PHP i JSON
PHP ma kilka wbudowanych funkcji do obsługi JSON.
Najpierw przyjrzymy się następującym dwóm funkcjom:
- json_encode()
- json_decode()
PHP - json_encode()
Funkcja json_encode() służy do kodowania wartości do formatu JSON.
Przykład
Ten przykład pokazuje, jak zakodować tablicę asocjacyjną w obiekcie JSON:
<?php
$age = array("Peter"=>35, "Ben"=>37, "Joe"=>43);
echo json_encode($age);
?>
Przykład
Ten przykład pokazuje, jak zakodować tablicę indeksowaną w tablicy JSON:
<?php
$cars = array("Volvo", "BMW", "Toyota");
echo json_encode($cars);
?>
PHP - json_decode()
Funkcja json_decode() służy do dekodowania obiektu JSON na obiekt PHP lub tablicę asocjacyjną.
Przykład
Ten przykład dekoduje dane JSON do obiektu PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj));
?>
Funkcja json_decode() domyślnie zwraca obiekt. Funkcja json_decode() ma drugi parametr, a po ustawieniu na wartość true obiekty JSON są dekodowane w tablice asocjacyjne.
Przykład
Ten przykład dekoduje dane JSON do tablicy asocjacyjnej PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj,
true));
?>
PHP — dostęp do zdekodowanych wartości
Oto dwa przykłady, jak uzyskać dostęp do zdekodowanych wartości z obiektu i tablicy asocjacyjnej:
Przykład
Ten przykład pokazuje, jak uzyskać dostęp do wartości z obiektu PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
echo $obj->Peter;
echo $obj->Ben;
echo $obj->Joe;
?>
Przykład
Ten przykład pokazuje, jak uzyskać dostęp do wartości z tablicy asocjacyjnej PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
echo $arr["Peter"];
echo $arr["Ben"];
echo $arr["Joe"];
?>
PHP — zapętlenie wartości
Możesz również przejść przez wartości w pętli za pomocą pętli foreach() :
Przykład
Ten przykład pokazuje, jak przejść w pętli przez wartości obiektu PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
foreach($obj
as $key => $value) {
echo $key . " => " . $value . "<br>";
}
?>
Przykład
Ten przykład pokazuje, jak przejść w pętli przez wartości tablicy asocjacyjnej PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
foreach($arr as $key => $value) {
echo $key . " => " . $value
. "<br>";
}
?>