如何将希腊语的html实体转换为php中的实际符号

Vik*_*kov 1 php string character-entities html-entities string-conversion

我有希腊网站,其中的所有帖子看起来都是这样的:

<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>
Run Code Online (Sandbox Code Playgroud)

实际上它在页面上看起来像这样:

醉蛤 θα δείτε θα είναι σε θέσn να κερδίzeει όσο 1000Χ του συνολικού στοιχήματος επιλέγοντας είτ ε 克利夫兰、彼得、沼泽、και

我需要将 html 实体更改为实际符号(我正在使用 UTF-8 编码。)似乎 html_entity_decode() 不执行此操作。这里有任何库或类似的东西可以让我将文本转换为实际的符号吗?

PHP 版本 PHP 5.3.29

谢谢!

更新:抱歉,这是我可耻的错误。我在调试问题时弄乱了 mb_internal_encoding() 和 'default_charset' ini 指令。所以我只需将 html_entity_decode 工作的编码设置为第三个参数:

   $decoded = html_entity_decode($str, ENT_COMPAT | ENT_HTML401, "UTF-8");
Run Code Online (Sandbox Code Playgroud)

正如夏洛特·杜努瓦所写。所以我将她的答案设置为正确。

Cha*_*ois 5

如果您的数据是 html 编码的(例如使用 PHP 的函数htmlentities),您可以使用html_entity_decode它来解码它。如果 php.ini 中设置的字符集不同,您可能需要设置字符集参数。

https://3v4l.org/Lmt38