Php 美化响应输出

Php 美化响应输出,php,api,Php,Api,我拼凑了一些代码来使用YelpAPI检索信息 $postData=“授予\类型=客户\凭证&”。 “client_id=MyClientIDl94gqHAg&”。 “client_secret=somecodehw09e6bgubi4nlj43hnnhl4s7w5eoxukb”; //领取代币 $curl=curl_init(); //设置url curl_setopt($curl,CURLOPT_URL,”https://api.yelp.com/oauth2/token"); //告诉cu

我拼凑了一些代码来使用YelpAPI检索信息

$postData=“授予\类型=客户\凭证&”。
“client_id=MyClientIDl94gqHAg&”。
“client_secret=somecodehw09e6bgubi4nlj43hnnhl4s7w5eoxukb”;
//领取代币
$curl=curl_init();
//设置url
curl_setopt($curl,CURLOPT_URL,”https://api.yelp.com/oauth2/token");
//告诉curl我们正在发帖子
curl_setopt($curl,CURLOPT_POST,TRUE);
//设置post字段
curl_setopt($curl,CURLOPT_POSTFIELDS,$postData);
//告诉curl我们需要返回的数据
curl_setopt($curl,CURLOPT_RETURNTRANSFER,TRUE);
$result=curl\u exec($curl);
如果($结果){
$data=json_decode($result);
}
//获取餐厅信息
curl_setopt_数组($curl,数组(
CURLOPT_URL=>”https://api.yelp.com/v3/businesses/north-india-restaurant-san-francisco",
CURLOPT_RETURNTRANSFER=>true,
CURLOPT_编码=>“”,
CURLOPT_MAXREDIRS=>10,
CULLOPT_超时=>30,
CURLOPT_HTTP_VERSION=>CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST=>“获取”,
CURLOPT_HTTPHEADER=>数组(
“授权:承载”.$data->访问\u令牌
),
));
$response=curl\u exec($curl);
$err=curl\u error($curl);
//密切联系
curl_close($curl);
如果($err){
echo“cURL Error:”$err;
}否则{
回音$应答;

}
您可以使用JSON解码和编码\u PRETTY\u打印收到的JSON:

$a='{"error": {"code": "TOKEN_MISSING", "description": "An access token must be supplied in order to use this endpoint."}}';
$b=json_decode($a);
$c=json_encode($b, JSON_PRETTY_PRINT);
echo "<pre>".$c."</pre>";

// result:

{   
    "error": {   
        "code": "TOKEN_MISSING",
        "description": "An access token must be supplied in order to use this endpoint."
    }
}
$a='{“error”:{“code”:“TOKEN_MISSING”,“description”:“必须提供访问令牌才能使用此端点。”}}”;
$b=json_解码($a);
$c=json\u encode($b,json\u PRETTY\u PRINT);
回显“$c.”;
//结果:
{   
“错误”:{
“代码”:“缺少令牌”,
“说明”:“必须提供访问令牌才能使用此终结点。”
}
}

注意,这在php<5.4.0

中不可用,您可以使用
json\u PRETTY\u PRINT
进行json\u解码和json\u编码。但这样做只是为了发展的目的@Jeff,是的,我只需要将输出显示为格式化的代码块。所以当我尝试:echo json_decode($response,json_PRETTY_PRINT);我的屏幕显示一个单词:Array。然而,当我尝试echo json_encode($response,json_PRETTY_PRINT)时;我在每一个双引号前面都有额外的反斜杠…很好用,谢谢。