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);
}
?>