Кодирование запроса CURL в PHP

У меня есть некоторые незначительные проблемы с кодировкой. Я получаю строку данных json отсюда (попробуйте сами):

http://cdn.content.easports.com/fifa/fltOnlineAssets/C74DDF38-0B11-49b0-B199-2E2A11D1CC13/2014/fut/items/web/179899.json 

Имя в данных показано следующим образом:

 Ari Skúlason 

Как я могу получить эти данные с надлежащей кодировкой, чтобы его Ари Скуласон?

Я попытался переключить его на utf-8, как это в php

 echo mb_convert_encoding($r,'ISO-8859-1','utf-8'); 

который приблизил меня, но его все еще не так

 Ari Sk lason 

мой запрос php curl:

 $location = 'http://cdn.content.easports.com/fifa/fltOnlineAssets/C74DDF38-0B11-49b0- B199-2E2A11D1CC13/2014/fut/items/web/179899.json'; $ch = curl_init($location); curl_setopt($ch, CURLOPT_HEADER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Accept: application/json')); $r = curl_exec($ch); curl_close($ch); echo mb_detect_encoding($r); $r = mb_convert_encoding($r,'ISO-8859-1','utf-8'); print_r($r); 

установите еще один параметр curl для CURLOPT_ENCODING и установите для него значение "", чтобы гарантировать, что он не вернет мусор

  curl_setopt($ch, CURLOPT_ENCODING ,""); 

Вы можете использовать заголовок

  header('Content-type: text/html; charset=UTF-8'); 

и после строки декодирования

  $page = utf8_decode(curl_exec($ch)); 

Это сработало для меня

или

 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8'); curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13'); 

после добавить это

 $page = curl_exec($ch); $dom = new DOMDocument('1.0', 'utf-8'); libxml_use_internal_errors(true); @$dom->loadHTML(mb_convert_encoding($page, 'HTML-ENTITIES', 'UTF-8')); 

Вы также можете попробовать.

 $results = curl_exec($init); curl_close($init); return json_decode(utf8_encode($results)); 

utf8_encode закодированный символ ASCII. Возврат некодированного ASCII может привести к поломке или возврату ошибки (в моем случае).

можешь попробовать

 $res= curl_exec ( $ch ); $result = iconv("Windows-1251", "UTF-8", $res);