Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php json_解码返回null(特殊字符)_Php - Fatal编程技术网

Php json_解码返回null(特殊字符)

Php json_解码返回null(特殊字符),php,Php,我在json\u decode方面遇到问题。我有一个表单,它从列表和字符名(可以有特殊的字母,如:ö,a,é,等等)中请求域: 我找到了答案 在html代码的顶部,我忘记添加: <meta charset="utf-8"> 希望这有助于任何人与这样的问题 JSON内容必须是UTF8编码的。如果您从api获得的数据不是,您可以在JSON解码之前自己将其编码为UTF8。您的示例代码将URL编码为UTF8,而不是数据itself@scrowler谢谢你的回复!如何对数据进行编

我在
json\u decode
方面遇到问题。我有一个表单,它从列表和字符名(可以有特殊的字母,如:
ö
a
é
,等等)中请求域:

我找到了答案

在html代码的顶部,我忘记添加:

    <meta charset="utf-8">


希望这有助于任何人与这样的问题

JSON内容必须是UTF8编码的。如果您从api获得的数据不是,您可以在JSON解码之前自己将其编码为UTF8。您的示例代码将URL编码为UTF8,而不是数据itself@scrowler谢谢你的回复!如何对数据进行编码?Utf8_编码($data),然后进行JSON解码it@scrowler不幸的是,这个问题仍然存在。
$url = 'https://us.api.battle.net/wow/character/' . $formRealm . '/' . $formChar . '?fields=items&locale=en_US&apikey=uv5rmcd7mk326pqxcy7hv79y3z97vwmr';
$result = file_get_contents($url);
$url1 = 'https://us.api.battle.net/wow/character/' . $formRealm . '/' . $formChar . '?fields=stats&locale=en_US&apikey=uv5rmcd7mk326pqxcy7hv79y3z97vwmr';
$result1 = file_get_contents($url1);
//echo $url;

// file_get_contents call instead
$data = $result;
$data1 = $result1;

// decode JSON
$json = json_decode($data, true);
//$json = preg_replace('/,\s*([\]}])/m', '$1', utf8_encode($url));
//$json = json_decode($json);
$json1 = json_decode($data1,true);
//$json1 = preg_replace('/,\s*([\]}])/m', '$1', utf8_encode($url1));
//$json1 = json_decode($json1);
    <meta charset="utf-8">