我尝试在vBulletin论坛中构建标记系统,并且工作正常。
但是我对帖子的快速编辑(使用AJAX)有疑问。
如果我用希伯来语书写字符,它将把字符替换为Unicode。
我用希伯来语撰写文章时的一个示例:
חחחחח לא?test!!
它将变成这样:
%u05D7%u05D7%u05D7%u05D7%u05D7 %u05DC%u05D0?test!!
似乎已使用不赞成使用的javascipt函数escape()
对字符串进行编码。如果您通过JavaScript在网页中回显了此信息,则可以使用unescape()
-看到这个小提琴。但是,如上所述,已弃用此方法。
应改为使用的功能是encodeURIComponent()
到位的escape()
,并decodeURIComponent()
代替unescape()
。然后,urldecode()
如果这是必要的步骤,则可以在PHP内部使用以获取所需的结果。
在您当前的设置下,要将unicode字符转换为适合在浏览器中呈现的html实体,则应执行以下操作:
$str = preg_replace_callback('/%u([0-9a-fA-F]{4})/', function ($match) {
return mb_convert_encoding(pack('H*', $match[1]), 'HTML-ENTITIES', 'UCS-2BE');
}, $str);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句