PHP 和 JSON
JSON 是什么?
JSON(JavaScript Object Notation)代表 JavaScript 对象表示法,它是一种存储和交换数据的语法。
由于 JSON 格式是基于文本的格式,因此它可以轻松地发送到服务器和从服务器接收,并且可以由任何编程语言用作数据格式。
PHP 和 JSON
PHP 提供了一些内置函数来处理 JSON。
首先,我们将查看以下两个函数:
json_encode()
json_decode()
PHP - json_encode()
json_encode()
函数用于将值编码为 JSON 格式。
实例
这个例子展示了如何将关联数组编码为 JSON 对象:
<?php $age = array("Bill"=>35, "Steve"=>37, "Elon"=>43); echo json_encode($age); ?>
实例
这个例子展示了如何将索引数组编码为 JSON 数组:
<?php $cars = array("Volvo", "BMW", "Audi"); echo json_encode($cars); ?>
PHP - json_decode()
json_decode()
函数用于将 JSON 对象解码为 PHP 对象或关联数组。
实例
这个例子将 JSON 数据解码为 PHP 对象:
<?php $jsonobj = '{"Bill":35,"Steve":37,"Elon":43}'; var_dump(json_decode($jsonobj)); ?>
json_decode()
函数默认返回一个对象。json_decode()
函数有第二个参数,当设置为 true 时,JSON 对象会被解码为关联数组。
实例
这个例子将 JSON 数据解码为 PHP 关联数组:
<?php $jsonobj = '{"Bill":35,"Steve":37,"Elon":43}'; var_dump(json_decode($jsonobj, true)); ?>
PHP - 访问解码后的值
以下是两个例子,展示了如何从对象和关联数组中访问解码后的值:
实例
这个例子展示了如何从 PHP 对象中访问值:
<?php $jsonobj = '{"Bill":35,"Steve":37,"Elon":43}'; $obj = json_decode($jsonobj); echo $obj->Bill; echo $obj->Steve; echo $obj->Elon; ?>
实例
这个例子展示了如何从 PHP 关联数组中访问值:
<?php $jsonobj = '{"Bill":35,"Steve":37,"Elon":43}'; $arr = json_decode($jsonobj, true); echo $arr["Bill"]; echo $arr["Steve"]; echo $arr["Elon"]; ?>
PHP - 遍历值
您还可以使用 foreach()
循环遍历值:
实例
这个例子展示了如何遍历 PHP 对象的值:
<?php $jsonobj = '{"Bill":35,"Steve":37,"Elon":43}'; $obj = json_decode($jsonobj); foreach($obj as $key => $value) { echo $key . " => " . $value . "<br>"; } ?>
实例
这个例子展示了如何遍历 PHP 关联数组的值:
<?php $jsonobj = '{"Bill":35,"Steve":37,"Elon":43}'; $arr = json_decode($jsonobj, true); foreach($arr as $key => $value) { echo $key . " => " . $value . "<br>"; } ?>