PHP:将所有字符转换为HTML实体

时间:2011-07-16 23:01:17

标签: php

如何将字符串中的所有字符转换为HTML实体?

htmlentities()不适用于像ćĆČ芚ĐđŽž这样的角色

4 个答案:

答案 0 :(得分:4)

<?php

function encode($string) {
    return mb_encode_numericentity($string, array(0x000000, 0x10ffff, 0, 0xffffff), 'UTF-8');
}

echo encode('ćĆČ芚ĐđŽž');

结果为&#263;&#262;&#268;&#269;&#352;&#353;&#272;&#273;&#381;&#382;

答案 1 :(得分:2)

这些角色没有(命名)实体。

您可以看到列表here。如果要转换为数字实体,请参阅this answer

答案 2 :(得分:2)

“ć”的字符代码是263,其作为HTML实体是&#263;,依此类推。

答案 3 :(得分:2)

众所周知,某些字符不是用htmlentities();编码的。

如果您查看docs,可以在str_replace()

中使用包含字符映射的帖子