Php htmlentities包含HTML的内容
我试图在我的网站上支持多种语言。一些需要翻译的内容将有实体引用,如Php htmlentities包含HTML的内容,php,codeigniter,multilingual,Php,Codeigniter,Multilingual,我试图在我的网站上支持多种语言。一些需要翻译的内容将有实体引用,如ch。我可以使用htmlentities将其转换为Ã。但是,如果需要翻译带有标记的字符串,该怎么办: "<p>Hello, <a href="">world with Ç</a></p>" “你好,” 如果我使用htmlentities,那么也会被转换。我不想将字符串分解为标记和非标记部分,然后只对非标记部分应用htmlentities。那太麻烦了,太乏味了。发布了一
ch
。我可以使用htmlentities
将其转换为Ã代码>。但是,如果需要翻译带有标记的字符串,该怎么办:
"<p>Hello, <a href="">world with Ç</a></p>"
“你好,”
如果我使用htmlentities
,那么
也会被转换。我不想将字符串分解为标记和非标记部分,然后只对非标记部分应用htmlentities
。那太麻烦了,太乏味了。发布了一个变通办法
将字符串传递给以下函数并使用返回的字符串
function unicode_escape_sequences($str){
$working = json_encode($str);
$working = preg_replace('/\\\u([0-9a-z]{4})/', '&#x$1;', $working);
return json_decode($working);
}
使用像UTF-8这样的Unicode编码怎么样?我一直在IE中看到奇怪的字符。我将从UTF-8的角度来看。你需要。我查看了响应标题,看到了HTML的以下内容:
text/HTML;字符集=UTF-8
。我不会把这个设定在加价中。My.htaccess具有AddDefaultCharset UTF-8
。所以我已经在UTF-8了。IE不支持&apos
,所以我开始使用'代码>。这让我想到了其他字符。尽管字符集是UTF-8,但当我试图在我的网页上显示时,比如说,ch
,它看起来像一个带问号的黑钻石。