Как изменить кодировку веб-страницы, полученной с помощью Simple HTML DOM?

0

Я пытаюсь прочитать содержимое веб-страницы

$html = file_get_html('http://www.example.com/somepage.aspx');

Поскольку кодировка страницы - это Windows-1254, и я работаю на странице, закодированной как UTF-8, я не могу заменить некоторые слова, которые имеют характерные для языка символы.

Например:

Если я попытаюсь

$str2 = str_replace('TÜRKÇE', 'TURKCE', $str);

он не заменяет.

Я пробовал htmlentities(), она работала, но удаляла несколько слов, содержащих специальные символы.

Теги:
encoding
simple-html-dom

2 ответа

0
Лучший ответ

После получения строк я использовал iconv('Windows-1254', 'utf-8', $str) (благодаря @pguardiario). Это решило мою проблему.

0

Работайте только в utf-8. Если у вас есть данные в других кодировках, конвертируйте их. Если вы не знаете кодировку, попробуйте ее определить. Если вы не можете, используйте пользователей. Затем используйте функции mb_ * только для всех операций с строками, это важно! некоторые функции отсутствуют в родном php, но ищут свои реализации make-make на php.net/.. в комментариях.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню