PHP và JSON
JSON là gì?
JSON là viết tắt của JavaScript Object Notation, và là một cú pháp để lưu trữ và trao đổi dữ liệu.
Vì định dạng JSON là một định dạng dựa trên văn bản, nó có thể dễ dàng được gửi đến và từ một máy chủ và được sử dụng làm định dạng dữ liệu bởi bất kỳ ngôn ngữ lập trình nào.
PHP và JSON
PHP có một số hàm tích hợp để xử lý JSON.
Đầu tiên, chúng ta sẽ xem xét hai chức năng sau:
- json_encode ()
- json_decode ()
PHP - json_encode ()
Hàm json_encode () được sử dụng để mã hóa một giá trị sang định dạng JSON.
Thí dụ
Ví dụ này cho thấy cách mã hóa một mảng kết hợp thành một đối tượng JSON:
<?php
$age = array("Peter"=>35, "Ben"=>37, "Joe"=>43);
echo json_encode($age);
?>
Thí dụ
Ví dụ này cho thấy cách mã hóa một mảng được lập chỉ mục thành một mảng JSON:
<?php
$cars = array("Volvo", "BMW", "Toyota");
echo json_encode($cars);
?>
PHP - json_decode ()
Hàm json_decode () được sử dụng để giải mã một đối tượng JSON thành một đối tượng PHP hoặc một mảng kết hợp.
Thí dụ
Ví dụ này giải mã dữ liệu JSON thành một đối tượng PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj));
?>
Hàm json_decode () trả về một đối tượng theo mặc định. Hàm json_decode () có tham số thứ hai và khi được đặt thành true, các đối tượng JSON được giải mã thành các mảng kết hợp.
Thí dụ
Ví dụ này giải mã dữ liệu JSON thành một mảng kết hợp PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj,
true));
?>
PHP - Truy cập các giá trị được giải mã
Dưới đây là hai ví dụ về cách truy cập các giá trị được giải mã từ một đối tượng và từ một mảng kết hợp:
Thí dụ
Ví dụ này cho thấy cách truy cập các giá trị từ một đối tượng PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
echo $obj->Peter;
echo $obj->Ben;
echo $obj->Joe;
?>
Thí dụ
Ví dụ này cho thấy cách truy cập các giá trị từ một mảng kết hợp PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
echo $arr["Peter"];
echo $arr["Ben"];
echo $arr["Joe"];
?>
PHP - Vòng qua các giá trị
Bạn cũng có thể lặp qua các giá trị bằng vòng lặp foreach () :
Thí dụ
Ví dụ này cho thấy cách lặp qua các giá trị của một đối tượng PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
foreach($obj
as $key => $value) {
echo $key . " => " . $value . "<br>";
}
?>
Thí dụ
Ví dụ này cho thấy cách lặp qua các giá trị của một mảng kết hợp PHP:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
foreach($arr as $key => $value) {
echo $key . " => " . $value
. "<br>";
}
?>