我正在尝试从 Instagram 的热门帖子中获取信息,当我var_dump()
在 api 响应中使用它时,它会填充一个包含我想要的信息的字符串,尽管当我尝试使用它对其进行解码时,json_decode()
它返回一个 null 并且当我检查json_last_error()
我明白了Malformed UTF-8 characters, possibly incorrectly encoded
。
这是我的 .php 文件
<?php
function get_popular($user_id,$count){
$api = 'https://api.instagram.com/v1/media/popular?client_id='.$user_id.'&count='.$count;
$response = file_get_contents($api);
var_dump($response);
// Decode the response and build an array
error_reporting(E_ALL);
$deco = json_decode($response, TRUE);
switch (json_last_error()) {
case JSON_ERROR_NONE:
echo ' - No errors';
break;
case JSON_ERROR_DEPTH:
echo ' - Maximum stack depth exceeded';
break;
case JSON_ERROR_STATE_MISMATCH:
echo ' - Underflow or the modes mismatch';
break;
case JSON_ERROR_CTRL_CHAR:
echo ' - Unexpected control character found';
break;
case JSON_ERROR_SYNTAX:
echo ' - Syntax error, malformed JSON';
break;
case JSON_ERROR_UTF8:
echo ' - Malformed UTF-8 characters, possibly incorrectly encoded';
break;
default:
echo ' - Unknown error';
break;
}
var_dump($deco);
}
?>