строка — Как преобразовать HTML-сущности греческого языка в реальные символы в переполнении стека

У меня есть греческий сайт, и все сообщения в нем выглядят как:

<p>&Omicron; &Mu;&pi;&#972;&nu;&omicron;&upsilon;&sigmaf; &Gamma;&#973;&rho;&omicron;&sigmaf; Drunken Clam &theta;&alpha; &delta;&epsilon;&#943;&tau;&epsilon; &theta;&alpha; &epsilon;&#943;&nu;&alpha;&iota; &sigma;&epsilon; &theta;&#941;&sigma;&eta; &nu;&alpha; &kappa;&epsilon;&rho;&delta;&#943;&zeta;&epsilon;&iota; &#972;&sigma;&omicron; 1000&Chi; &tau;&omicron;&upsilon; &sigma;&upsilon;&nu;&omicron;&lambda;&iota;&kappa;&omicron;&#973; &sigma;&tau;&omicron;&iota;&chi;&#942;&mu;&alpha;&tau;&omicron;&sigmaf; &epsilon;&pi;&iota;&lambda;&#941;&gamma;&omicron;&nu;&tau;&alpha;&sigmaf; &epsilon;&#943;&tau;&epsilon; Cleveland, Peter, Quagmire, &kappa;&alpha;&iota;</p>

На самом деле это выглядит так на странице:

Σ όπόνους Γύρος Пьяный моллюск θα δείτε θα είναι σε θέση να κερδίζει όσο 1000Χ του συνολικού στοιχήματος ενεκταέ, Квебек, Кливленд

Мне нужно изменить сущности HTML на реальные символы (я использую кодировку UTF-8.)
Кажется, html_entity_decode () не делает этого. Здесь есть какая-нибудь библиотека или что-то подобное, чтобы я мог преобразовывать текст в реальные символы.

PHP версия PHP 5.3.29

Спасибо!

Upadate: Извините, это была моя постыдная ошибка. Я запутался в директивах ini mb_internal_encoding () и default_charset во время отладки моей проблемы. Поэтому мне просто нужно было установить кодировку для работы html_entity_decode в качестве третьего параметра:

   $decoded = html_entity_decode($str, ENT_COMPAT | ENT_HTML401, "UTF-8");

как написала Шарлотта Дюнуа.
Поэтому я поставил ее ответ как правильный.

0

Решение

Если ваши данные в кодировке HTML (например, с помощью функции PHP htmlentities), ты можешь использовать html_entity_decode расшифровать его обратно. Вам может потребоваться установить аргумент charset, если ваш набор charset в php.ini отличается.

https://3v4l.org/Lmt38

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]