PHP中JSON字符串转数组的两种方法详解及json_decode()使用教程
在PHP中,将JSON字符串转换为数组有两种方式。

方法一:使用json_decode()函数
json_decode()函数能够把 JSON 字符串转化为 PHP 变量。其语法具体如下:
“`
mixed 对字符串 $json 进行 json 解码;可以指定是否以关联数组形式返回结果,默认为 FALSE;还可以指定解码的深度,默认为 512;以及其他选项,默认为 0 。
“`
其中,要解码的 JSON 字符串是$json,有一个可选参数$assoc,当把$assoc 设置为 true 后,就会返回数组而不是对象。
示例代码展示了如何利用 json_decode()进行这样的转换操作。
“`php
$json 中包含了“name”为“John”、“age”为 30 以及“city”为“New York”的信息。
使用 json_decode 函数将 $json 解码为关联数组并赋值给 $array 。
“`
在上述代码里,$json 为一个 JSON 字符串,而$array 是经过转换后的数组。
方法二:使用json_decode()函数的面向对象方式
json_decode()函数能够以面向对象的形式来使用,其使用方式具体如下:
“`php
$json = ‘{“name”:”John”, “age”:30, “city”:”New York”}’;
$obj = json_decode($json);
// 将对象转换为数组
$array = (array) $obj;
“`
在上述代码里,有一个 JSON 字符串是$json,经过转换后得到了对象$obj,而(array) $obj的作用是把对象转换为数组。
另外,需要注意的是,json_decode()函数在默认情况下会把 JSON 字符串解码成对象,而非数组。如果想要把 JSON 字符串解码为数组,就需要在函数中传入第二个参数,且这个参数的值为 true。
使用上述两种方法中的一种,你能够把 JSON 字符串轻松地转换为数组,接着在 PHP 代码里进行操作。