Исправить некорректно отображаемую кодировку в html-документе с помощью php

Есть ли способ исправить символы, которые отображаются неправильно после запуска этой разметки html через phpquery :: NewDocument? В исходном документе есть двойные кавычки - классика с современной женщиной - в итоге они отображаются неправильно после создания нового документа с помощью phpquery.

    //Original document is UTF-8 encoded
$raw_html = '<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /></head><body><p>Mr. Smith of Bangkok celebrated the “Classics with modern Woman”.</p></body></html>';
print($raw_html);

$aNew_document = phpQuery::newDocument($raw_html);
print($aNew_document);

Исходный вывод: Мистер Смит из Бангкока праздновал «Классику с современной женщиной».

Новый документ Вывод: Мистер Смит из Бангкока праздновал «Классику с современной женщиной».

8
задан JMC 27 August 2010 в 16:28
поделиться

2 ответа

  1. Вам необходимо сохранить страницу в кодировке UTF-8 без BOM.
  2. Добавьте этот заголовок поверх скрипта:

    header("Content-Type: text/html; charset=UTF-8");

[EDIT]: Как сохранять файлы в формате UTF-8 без BOM:

По запросу OP, вот как вы можете это сделать в Windows:

  1. Загрузите Notepad++ . Это потрясающий текстовый редактор, который вы должны использовать.
  2. Установите его.
  3. откройте скрипт PHP в Notepad++, содержащий этот код. Страница, на которой вы делаете все кодирование. Да, этот файл на вашем компьютере.
  4. В Notepad++ в меню «Кодировка» вверху выберите «Преобразовать в UTF-8 без спецификации».
  5. Сохраните файл.
  6. Загрузите на свой веб-сервер по FTP или любым другим способом.
  7. Теперь запустите этот скрипт.
25
ответ дан 3 November 2019 в 13:35
поделиться

У вас есть это в элементе :

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> 

Следующим курсом будет использование объектов HTML для отображения этих символов.

1
ответ дан 3 November 2019 в 13:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: