【phpjson解析】在PHP开发中,JSON(JavaScript Object Notation)是一种常用的数据交换格式。PHP提供了丰富的函数来处理JSON数据,使得开发者能够轻松地将数组或对象转换为JSON字符串,或者将JSON字符串解析为PHP数组或对象。以下是对PHP中JSON解析的总结与对比。
一、PHP JSON 解析概述
PHP 中常用的 JSON 函数包括 `json_encode()` 和 `json_decode()`,它们分别用于将 PHP 数据结构转换为 JSON 字符串和将 JSON 字符串转换为 PHP 数据结构。此外,还有一些选项参数可以控制编码和解码的行为。
二、常用 JSON 函数对比
函数名 | 功能说明 | 参数说明 | 返回值类型 | 是否支持对象转数组 |
`json_encode()` | 将 PHP 数组或对象转换为 JSON 字符串 | `$value`:要编码的数据;`$options`:可选参数,如 `JSON_UNESCAPED_UNICODE` 等 | JSON 字符串 | 否 |
`json_decode()` | 将 JSON 字符串转换为 PHP 数组或对象 | `$json`:JSON 字符串;`$assoc`:是否返回数组(true)或对象(false);`$depth`:最大递归深度 | PHP 数组或对象 | 是 |
`json_last_error()` | 获取最后一次 JSON 编码/解码错误信息 | 无参数 | 整数(错误代码) | 否 |
三、使用示例
示例1:将数组转为 JSON
```php
$data = [
"name" => "张三",
"age" => 25,
"is_student" => true
];
$json = json_encode($data, JSON_UNESCAPED_UNICODE);
echo $json;
```
输出:
```json
{"name":"张三","age":25,"is_student":true}
```
示例2:将 JSON 转为数组
```php
$json = '{"name":"李四","age":30,"is_student":false}';
$data = json_decode($json, true);
print_r($data);
```
输出:
```
Array
(
name] => 李四
|