вход cURL в DOMDocument UTF-8

Я читаю в HTML с URL-адреса, и хотя он помечен как UTF-8 в браузере, мне нужно iconv Windows-1252 // IGNORE, чтобы получить правильный результат.

    $ch = curl_init();
$timeout = 10;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$html = curl_exec($ch);
curl_close($ch);
$html = iconv("UTF-8", "Windows-1252//IGNORE", $html);

echo ($html);

Вывод (длинный HTML-файл и необработанный вывод):<span class="price">€30 and under</span>

Для анализа DOMDocument я пробовал разные способы, включая принудительное использование кодировки UTF-8, но в основном

        $tmp = new DOMDocument();
//$tmp->encoding = 'UTF-8';
$tmp->loadHTML($html);
echo $tmp->saveXML();

который выводит HTML как <span class="price">&#x80;30 and under</span>, Этот символ является символом Windows 1252 за €, но я не могу понять, как преобразовать его обратно в оригинал (то же самое для других специальных символов).

Спасибо за любые идеи о том, как объяснить или исправить это действительно странное поведение DOMDoc!

FJ

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector