DOMDocument кодировка при сохранении в HTML

PHP поддерживает работу с классом DOMDocument, но есть некоторые особенности, которые требуют внимания. Одна из них — это html кодирование символов, если вы не укажете в заголовке документа мета информацию о кодировке.

Рассмотрим пример:

В зависимости от того, в какой кодировке был ваш текст, получится разный результат. Вот пример, когда ваш текст был в win-1251:

А вот пример для исходного текста в UTF-8:

Видно, что кириллические символы представлены в виде 16ти-ричных HTML кодов.

Почему вывелась не исходная кириллица, а была произведена перекодировка? Произошло это от того, что программа не знает, какая кодировка должна быть у документа — она ведь не указана. Для функции saveHTML() её нужно указать в секции документа head, как meta-тэг:

Если указанная кодировка в meta совпадает с кодировкой текста, то вы получите на выходе:

Мало букафф? Читайте есчо !

XML парсер в массив на PHP

Сентябрь 19, 2015 г.

По идее столько всего понаписано, чего огород то городить? От случая к случаю, конечно, пользуюсь библиотеками PHP. Но вместе с этим, есть объективные ...

Читать

Как определить ip адрес посетителя сайта в PHP

Ноябрь 13, 2015 г.

PHP не имеет каких то специальных средств для определения ip адреса. Эту информацию ему поставляет веб-сервер в виде переменных окружения. Используя ...

Читать

Как в PHP записать данные в файл?

Ноябрь 12, 2015 г.

Рассмотрим несколько способов сохранения данных в файл. Функция file_put_contents() для записи в файл Функция появилась в 5й версии PHP. Это самый простой, наверное, способ записать скалярные данные (строку или текст) в файл. [crayon-6a9c24d96189f562065818/] ...

Читать

Вывод анонсов статей с картинкой, в Wordpress

Август 5, 2013 г.

Сформулируем задачу. Нужно вывести 3 (а в общем случае N) анонсов новостей, с картинкой, в шаблоне на главной странице сайта. Этот кусочек должен выглядеть ...

Читать
 

Комментарии к «DOMDocument кодировка при сохранении в HTML»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: