Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/238.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中的重音字符_Php_Curl - Fatal编程技术网

如何处理PHP中的重音字符

如何处理PHP中的重音字符,php,curl,Php,Curl,我正在尝试从以下url获取用户的IP详细信息: 现在,如果打开上面的URL,您将看到city参数中有一个奇怪的字符,而不是重音字符……在用php显示之前,如何修复它 我的代码 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://freegeoip.net/json/".trim($user->ip_address)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $curl_out

我正在尝试从以下url获取用户的IP详细信息:

现在,如果打开上面的URL,您将看到
city
参数中有一个奇怪的字符,而不是重音字符……在用php显示之前,如何修复它

我的代码

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://freegeoip.net/json/".trim($user->ip_address));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$curl_out = curl_exec($ch);
curl_close($ch); 
$jout = json_decode($curl_out);
echo $jout->city.", ".$jout->region_name.", ".$jout->country_name;

它是以UTF-8编码的,但您将其解释为ISO-8859-1


设置适当的选项,或者通过
utf8\u decode()

运行
$curl\u out
值。此代码工作正常。您有编码问题,可能没有utf-8编码。
header('Content-Type:text/html;charset=utf-8')你能不能把这个作为答案贴出来,这样我就可以接受了?因为这最终解决了它,虽然我不知道为什么utf8\u解码不起作用,我尝试了$curl\u out=utf8\u解码($curl\u out);json解码失败了,我也试着在$jout->city上进行解码,但我仍然遇到相同的字符问题。啊,对了,因为json需要有效的UTF-8。。。隐马尔可夫模型。。。它应该会起作用,真的。。。