Иногда по невнимательности возникает такая проблема, что функция htmlentities конвертирует кириллические буквы в нечитаемую последовательность символов. Это значит, что Вы не указали кодировку, которую функция будет использовать при преобразовании строки в html-сущности.
Решается эта проблема очень легко - необходимо добавить в вызов функции третий параметр-кодировку. Чаще всего это строка 'UTF-8' или 'cp1251'. Также Вы можете использовать функцию htmlspecialchars вместо htmlentities. Она работает таким же образом, но конвертирует меньший диапазон специальных символов. Не забывайте про кодировку, в htmlspecialchars также есть этот аргумент.
Приведем небольшой пример, при котором htmlentities/htmlspecialchars возвращают кракозябли вместо строки с кириллическими символами:
<?php echo htmlentities("Кириллица") ?>
В результате на странице видим Ð�иÑ�иллиÑ�а вместо слова "Кириллица". После добавления двух параметров ENT_QUOTES и 'UTF-8', проблема исчезает:
<?php echo htmlentities("Кириллица", ENT_QUOTES, 'UTF-8') ?>
8 марта 2024 г. 20:17
|
На жаль мені не допомогло. Отримав хостинг на infinityfree.com, зареєстрував свій сайт, почав створювати сторінку на HTML. Вона проста і елементарна, 2 кілобайти, дуже швидко грузиться: http://2c.free.nf. Але вже зіткнувся з проблемою: замість тексту українською мовою виводяться ромби. Хто загляне у написаний мною власноручно index.html той побачить, що звертаюсь я сюди після багатьох спроб вирішити проблему самостійно. Шукав, читав, експериментував. При відкриванні цього index.html на локальному компютері з жорсткого диска - все ОК, все добре відображається. А при відкриванні http://2c.free.nf - одні ромби замість літер. Задача - як зробити щоб відображалась українська кирилиця?
|
8 марта 2024 г. 20:40
|
Перепрошую, але на третій день інтенсивних пошуків вже розібрався сам. Може комусь пригодиться то відповідаю: Досяг мети шляхом редагування файла .htaccess, який override standard site settings. Всіх бажаючих запрошую поглянути на результат ))
|