在PHP中可以使用json_decode()函数将JSON编码的字符串转换为适当的PHP数据类型。默认情况下,json_decode()函数将返回一个对象;但是,可以指定第二个参数为一个布尔值true,这样JSON值将被解码为关联数组。
基本语法:
json_decode( $json, $assoc = FALSE, $depth = 512, $options = 0 )
参数:json_decode()函数接受如上所述的四个参数,如下所述:
● json:它包含需要解码的JSON字符串。它仅适用于UTF-8编码的字符串。
● assoc:它是一个布尔变量。如果为true,则返回的对象将转换为关联数组。
● depth:它表示用户指定的递归深度。
● options:它包括JSON_OBJECT_AS_ARRAY的位掩码,JSON_BIGINT_AS_STRING,JSON_THROW_ON_ERROR。
返回值:此函数以适当的PHP类型返回已编码的JSON值。如果json无法解码或者编码数据比递归限制更深,则返回NULL。
示例:把json转换成关联数组
<?php// 在PHP变量中存储JSON数据$json = '{"Peter":65,"Harry":80,"John":78,"Clark":90}';var_dump(json_decode($json, true));?>
上面示例的输出将如下所示:
array(4){["Peter"]=>int(65)["Harry"]=>int(80)["John"]=>int(78)["Clark"]=>int(90)}
PHP函数json_encode()如何将数据变量转成json