如何处理PHP中的重音字符
我正在尝试从以下url获取用户的IP详细信息: 现在,如果打开上面的URL,您将看到如何处理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
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。。。隐马尔可夫模型。。。它应该会起作用,真的。。。