Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Проблема русских кодировок в работе с loadHTMLFile() - saveHTML()
|
|||
|---|---|---|---|
|
#18+
Добрый день. Проблема такова: в объект X класса DOMDocument грузится методом DOMDocument->loadHTMLFile(URI) html-файл с русскоязычным контентом. Кодировка файла неизвестна, мета-тега с её указанием файл не содержит. Потом делаем echo X->saveHTML() - и получаем на мониторе абракадабру вместо русских букв. Кто-нибудь знаком с такой проблемой и знает, что этим делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2014, 12:39 |
|
||
|
Проблема русских кодировок в работе с loadHTMLFile() - saveHTML()
|
|||
|---|---|---|---|
|
#18+
в пхп есть функция детекта кодировки. детектит исходя чисто из текста. если есть руские буквы - подозреваю что определит точно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2014, 13:58 |
|
||
|
Проблема русских кодировок в работе с loadHTMLFile() - saveHTML()
|
|||
|---|---|---|---|
|
#18+
и зачем темы плодить ? или ты на каждую строчку кода будешь тему делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2014, 13:59 |
|
||
|
Проблема русских кодировок в работе с loadHTMLFile() - saveHTML()
|
|||
|---|---|---|---|
|
#18+
Соседнюю тему завёл, т.к. была надежда выцепить кодировку из http-заголовка. А точно детектить кодировку чисто из текста, имхо, невозможно - все эти функции работают весьма приблизительно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2014, 14:18 |
|
||
|
Проблема русских кодировок в работе с loadHTMLFile() - saveHTML()
|
|||
|---|---|---|---|
|
#18+
Летучий Змей, тыж сам написал что нету указателя на кодировку в странице... у тебя есть ещо вариант кроме как детектить на основании текста? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2014, 15:01 |
|
||
|
Проблема русских кодировок в работе с loadHTMLFile() - saveHTML()
|
|||
|---|---|---|---|
|
#18+
Указателя на кодировку в странице нет, но, может, можно как-то дать команду серверу перекодировать её перед отправкой в то, что нам нужно... как-то так. Пробовал отправлять серверу заголовок запроса Accept-charset: имяНужнойКодировки. Но, похоже, плевать ему на это. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2014, 16:22 |
|
||
|
Проблема русских кодировок в работе с loadHTMLFile() - saveHTML()
|
|||
|---|---|---|---|
|
#18+
Летучий ЗмейУказателя на кодировку в странице нет, но, может, можно как-то дать команду серверу перекодировать её перед отправкой в то, что нам нужно... как-то так. Пробовал отправлять серверу заголовок запроса Accept-charset: имяНужнойКодировки. Но, похоже, плевать ему на это. афигеть...а ты разве не посылаешь ему итак аксепт чарсет ютф8 или виндоус1251 (я читал и соседнюю твою ветку по этой же проблеме тоже :) 0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2014, 18:55 |
|
||
|
Проблема русских кодировок в работе с loadHTMLFile() - saveHTML()
|
|||
|---|---|---|---|
|
#18+
alex564657498765453аксепт чарсетФормально таковой заголовок существует, но я ни разу не видел его живьем в дикой природе, т.е. в браузерных протоколах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2014, 19:11 |
|
||
|
Проблема русских кодировок в работе с loadHTMLFile() - saveHTML()
|
|||
|---|---|---|---|
|
#18+
alex564657498765453Летучий ЗмейУказателя на кодировку в странице нет, но, может, можно как-то дать команду серверу перекодировать её перед отправкой в то, что нам нужно... как-то так. Пробовал отправлять серверу заголовок запроса Accept-charset: имяНужнойКодировки. Но, похоже, плевать ему на это. афигеть...а ты разве не посылаешь ему итак аксепт чарсет ютф8 или виндоус1251 (я читал и соседнюю твою ветку по этой же проблеме тоже :) 0 В моём примере в соседней ветке я ему в явном виде отправлял вот что: $req = "GET $url HTTP/1.0\n"."User-Agent: PHP/5\n"."Host: $host:$port\n"."Accept: */*\n\n" Отправлял это через fwrite($fp, $req), где $fp - открытый ранее сокет (или как там это правильно сказать). Пробовал добавлять в $req и Accept-charset, но он на это не реагировал. Может, конечно, кроме $req ему ещё что-то в неявном виде отправляется, в то числе Accept-charset, но вряд ли =:) А ты, кажется, перепутал в той ветке мой код и код примера из другой статьи, который идёт вслед за моим кодом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.10.2014, 19:45 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38781898&tid=1462322]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
45ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 215ms |
| total: | 351ms |

| 0 / 0 |
