我正在创建一个网站,该网站通过以JSON格式响应的API来提供信息。我想在PHP中执行以下命令:
exec('curl -v -u {client_id}:{client_secret} -d code="{authorization_code}" -d redirect_uri={redirect_uri} -d grant_type=authorization_code https://api.basespace.illumina.com/v1pre3/oauthv2/token', $token);
这会返回一个名为$token
的数组,其中包含以下格式:
Array
(
[0] => {"error":"invalid_grant","error_description":"Authorization code is unknown for this application or an access token has already been issued for it."}
)
在这个例子中,我想将error
和error_description
放在单独的变量中,以便进一步处理。
我已经考虑过使用substr()
,但$token
的内容可能会有所不同,所以我认为它不会起作用......
是否有另一种更简单的方法来分割数组?
答案 0 :(得分:1)
$arr = json_decode($token[0], true); //not a very indicative name for JSON, 'token'
$error = $arr['error'];
$error_desc = $arr['error_description'];