PHP 和 JSON
什麼是 JSON?
JSON 是 JavaScript Object Notation 的縮寫,是一種用於儲存和交換資料的語法。
由於 JSON 格式是基於文字的格式,它可以輕鬆地與伺服器之間傳送,並被任何程式語言用作資料格式。
PHP 和 JSON
PHP 包含一些內建函式來處理 JSON。
首先,我們將檢視以下兩個函式:
- json_encode()
- json_decode()
PHP - json_encode()
函式 json_encode() 用於將值編碼為 JSON 格式。
示例
本示例演示瞭如何將關聯陣列編碼為 JSON 物件:
<?php
$age = array("Peter"=>35, "Ben"=>37, "Joe"=>43);
echo json_encode($age);
?>
自己動手試一試 »
示例
本示例演示瞭如何將索引陣列編碼為 JSON 陣列:
<?php
$cars = array("Volvo", "BMW", "Toyota");
echo json_encode($cars);
?>
執行示例 »
PHP - json_decode()
函式 json_decode() 用於將 JSON 物件解碼為 PHP 物件或關聯陣列。
示例
本示例將 JSON 資料解碼為 PHP 物件:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj));
?>
執行示例 »
json_decode() 函式預設返回一個物件。函式 json_decode() 有第二個引數,當設定為 true 時,JSON 物件會被解碼為關聯陣列。
示例
本示例將 JSON 資料解碼為 PHP 關聯陣列:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
var_dump(json_decode($jsonobj, true));
?>
執行示例 »
PHP - 訪問解碼後的值
以下是兩種訪問物件和關聯陣列中解碼值的方法:
示例
本示例演示瞭如何訪問 PHP 物件中的值:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
echo $obj->Peter;
echo $obj->Ben;
echo $obj->Joe;
?>
執行示例 »
示例
本示例演示瞭如何訪問 PHP 關聯陣列中的值:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
echo $arr["Peter"];
echo $arr["Ben"];
echo $arr["Joe"];
?>
執行示例 »
PHP - 遍歷值
您也可以使用 foreach() 迴圈遍歷值。
示例
本示例演示瞭如何遍歷 PHP 物件中的值:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$obj = json_decode($jsonobj);
foreach($obj as $key => $value) {
echo $key . " => " . $value . "<br>";
}
?>
執行示例 »
示例
本示例演示瞭如何遍歷 PHP 關聯陣列中的值:
<?php
$jsonobj = '{"Peter":35,"Ben":37,"Joe":43}';
$arr = json_decode($jsonobj, true);
foreach($arr as $key => $value) {
echo $key . " => " . $value . "<br>";
}
?>
執行示例 »