我有以下 json 输出 - 我已经尝试了多种方法,但没有任何运气 - 我只想获得种类(软件包)的值。任何想法:
{"items":
[{"assets":
[{"kind":"software-package","url":"__URL__"}],
"metadata":{"bundle-identifier":"SimpleCalculator",
"bundle-version":"000","kind":"software",
"title":"com.work.demo","subtitle":"1.0"}
谢谢
尝试用类似json_encode
解码它
$result_arr = json_decode($my_arr,true);
print_r($result_arr['items']['assets']['kind']);
这不是有效的 JSON。
让我们尝试更明智地格式化它。
{"items": [
{"assets": [
{"kind":"software-package","url":"__URL__"}
],
"metadata":{"bundle-identifier":"SimpleCalculator",
"bundle-version":"000","kind":"software",
"title":"com.work.demo","subtitle":"1.0"
}
你缺少很多右括号。 :(
您如何获取此 JSON。它是手工格式化还是由某些软件生成?它们可能是源代码中的错误,而不是您的代码。
使用的是 5.3 以上的 PHP 版本,那么已经有内置函数来解码和编码 JSON 字符串。
$some_json_string = {......};
$json_string_as_object = json_decode($some_json_string);
$json_string_as_array = json_decode($some_json_string, true);
您也可以执行相反的操作:
$some_array = array(...);
$json_string = json_encode($some_array);
Json 解码 : http://php.net/manual/en/function.json-decode.phpJson 编码:http://www.php.net/manual/en/function.json-encode.php