PHP教程:如何使用json_decode()函数将JSON字符串转换为数组或对象
在 PHP 里,能够利用 json_decode()这个函数把 JSON 字符串转化成数组或者对象。

以下是如何将JSON数据转换为数组对象的步骤:
1. 创建一个JSON字符串
首先,你得拥有一个存有 JSON 数据的字符串。你能够把 JSON 数据保存在一个变量里,亦或是从外部文件里进行读取。举例来说,倘若你有一个存储在变量$json 中的 JSON 字符串,那么就可以按照这样的方式去创建它:
$json 的内容为“{“name”:”John”, “age”:30, “city”:”New York”}”。 其中包含了姓名“John”,年龄 30 以及城市“New York”。 这个 $json 以特定的格式存储了这些信息。
使用 json_decode()函数来把 JSON 字符串转化为数组。
接下来,用 json_decode()函数把 JSON 字符串转化为数组对象。此函数需两个参数,其一为要转换的 JSON 字符串,其二为一个可选的布尔值,用于确定是否把结果转换为关联数组。若想得到关联数组,就把第二个参数设为 true,默认是 false。
使用 json_decode() 把上面的 JSON 字符串转化成数组对象。
$person = json_decode($json);
3. 访问数组中的数据
现在,你能够运用数组的键去对数组中的数据进行访问。比如说,倘若想要访问“name”键所对应的那个值,就可以使用如下的代码:
echo $person->name; // 输出John
你可以把数组对象转换为关联数组,做法是设置 json_decode()函数的第二个参数为 true,示例如下:
使用 json_decode 函数将 $json 解码为关联数组并赋值给 $person 。
这样,你就可以通过键名来访问数组中的数据:
输出 $person 数组中 'name' 键对应的值,该值为 John
4. 来自文件的JSON
如果你要把来自文件的 JSON 数据转化为数组对象,那么可以运用 file_get_contents()这个函数从文件里读取 JSON 数据,接着把读取到的数据传递给 json_decode()函数,情况就如同这样:
获取到的数据存储在变量 $json 中,这个数据是通过 file_get_contents 函数从名为‘data.json’的文件中读取出来的。
$person = json_decode($json);
5. 错误处理
需要注意的是,json_decode()函数在对错误的 JSON 数据进行解析时或许会返回 null。所以,在处理 JSON 数据的时候应当检查返回值是否为 null,以此来避免出现错误。
将 JSON 字符串转换为数组对象的基本步骤如上所述。在实际应用里,你或许需要进行一些错误处理,并且依据 JSON 数据的结构去访问嵌套的数据。