Ответ 1
header('Content-type: text/plain; charset=utf-8');
У меня есть PHP script, вызываемый:
http://cyber-flick.com/apiMorpho.php?method=getMorphoData&word=kot
Это отображает некоторые данные в виде обычного текста:
Cz��� mowy: rzeczownik
Przypadek: dope�niacz
Rodzaj: şe�ski
Liczba: mnoga
Как вы можете видеть вместо правильных символов, есть так "кусты". То, что я хотел бы сделать, это показать это так, чтобы люди отображали в браузере соответствующие символы UTF-8.
Вы можете инкапсулировать его в теги HMTL и установить в метатете UTF-8, но поскольку данные, полученные из этого script, будут обработаны дальше, я не хочу использовать какие-либо HTML-теги, это должен быть только обычный текст результат.
Итак, есть ли способ сообщить браузеру, что этот файл UTF-8 не использует метатеги?
PS. Файл кодируется в UTF-8, и если я вручную меняю кодировку кодировки в своем браузере на UTF-8, он отображается нормально, но то, что я хочу усвоить, - это люди, которых не нужно делать.
header('Content-type: text/plain; charset=utf-8');
Также обратите внимание, что установка заголовка на "text/plain"
приведет к тому, что все html и php (частично) будут печатать символы на экране как TEXT, а не как HTML. Поэтому помните о возможном HTML-анализе без использования текстового типа plain
.
Использование:
header('Content-type: text/html; charset=utf-8');
Может также возвращать HTML и PHP. Не только текст.
PHP по умолчанию всегда возвращает следующий заголовок: "Content-Type: text/html" (не заметить кодировку), поэтому вы должны использовать
<?php header('Content-type: text/plain; charset=utf-8'); ?>
Вы должны указать, какая кодировка данных. Либо в мета или в заголовках
header('Content-Type: text/plain; charset=utf-8');
Попробуйте этот путь header('Content-Type: text/plain; charset=utf-8');
HTML файл:
<head>
<meta charset="utf-8">
</head>
PHP файл:
<?php header('Content-type: text/plain; charset=utf-8'); ?>