Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php htmlentities包含HTML的内容_Php_Codeigniter_Multilingual - Fatal编程技术网

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
,它看起来像一个带问号的黑钻石。