PHP - 将非ASCII字符转换为没有mbstring的数字实体

时间:2016-01-12 16:57:14

标签: php unicode html-entities

我想将任何Unicode字符串转换为数字HTML实体,但ASCII字符除外。所以像这样的字符串:

Text goes here. Here's だ and here's ã.

转换为

Text goes here. Here's &#12384 and here's &#227.

作为参考,这个问题有一个函数将所有字符转换为数字实体,但它需要mbstring,我不能使用(我也不能使用PHP 5.3.10以后的任何功能)。 How to convert all characters to their html entity equivalent using PHP

1 个答案:

答案 0 :(得分:2)

这不是我的代码。

我使用" php将unicode转换为html"进行了简单的Google检查。并发现了这个:

https://af-design.com/2010/08/17/escaping-unicode-characters-to-html-entities-in-php/

有这个:

function unicode_escape_sequences($str){
    $working = json_encode($str);
    $working = preg_replace('/\\\u([0-9a-z]{4})/', '&#x$1;', $working);
    return json_decode($working);
}

该网页上还有很多其他例子,但这个例子看起来就像你要找的那样。

请记住:Google是您的朋友。 : - )