Php HTML特殊字符(外语)

Php HTML特殊字符(外语),php,Php,基本上我有这个字符串: Český, Deutsch, English (US), Español (ES), Français (France), Italiano, 日本語, 한국어, Polski, 中文(繁體) 我想把它转换成所有可能的HTML实体(可能还有俄语字符!)。 我尝试用不同的字符集生成不同的“htmlspecialchars”和“htmlentities”函数,但它返回空字符串 $l = htmlentities("Český, Deutsch, English (US),

基本上我有这个字符串:

Český, Deutsch, English (US), Español (ES), Français (France), Italiano, 日本語, 한국어, Polski, 中文(繁體)
我想把它转换成所有可能的HTML实体(可能还有俄语字符!)。 我尝试用不同的字符集生成不同的“htmlspecialchars”和“htmlentities”函数,但它返回空字符串

$l = htmlentities("Český, Deutsch, English (US), Español (ES), Français (France), Italiano, 日本語, 한국어, Polski, 中文(繁體) €", ENT_COMPAT, "BIG5-HKSCS");
$l = htmlentities($l, ENT_COMPAT, "KOI8-R");
$l = htmlentities($l, ENT_COMPAT, "EUC-JP");
$l = htmlentities($l, ENT_COMPAT, "Shift_JIS");
$l = htmlentities($l, ENT_COMPAT, "Shift_JIS");
echo $l;
返回一个空字符串


有任何帮助吗?

使用标头将HTTP标头修改为utf-8:

header('Content-Type: text/html; charset=utf-8');
另外,请确保您的HTML文档也是utf-8格式:

<meta http-equiv="Content-type" content="text/html" charset="utf-8" />

这是我的“unutf8”函数,它将所有UTF8字符转换为

function unutf8($str) {
    return preg_replace_callback("([\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}|[\xF8-\xFB][\x80-\xBF]{4}|[\xFC-\xFD][\x80-\xBF]{5})",
        function($m) {
            $c = $m[0];
            $out = bindec(ltrim(decbin(ord($c[0])),"1"));
            $l = strlen($c);
            for( $i=1; $i<$l; $i++) {
                $out = ($out<<6) | bindec(ltrim(decbin(ord($c[$i])),"1"));
            }
            if( $out < 256) return chr($out);
            return "&#".$out.";";
        },$str);
}
函数unutf8($str){
返回preg\u replace\u回调(([\xC0-\xDF][\x80-\xBF][\xE0-\xEF][\x80-\xBF]{2}{124;[\ xF0-\xF7][\x80-\xBF][\xF8-\xFB][\x80-\xBF][\xBF]{4}\xFC-\xFD 5}),
功能(百万美元){
$c=$m[0];
$out=bindec(ltrim(decbin(ord$c[0]),“1”);
$l=strlen($c);

对于($i=1;$i不要寻求艰难的解决方案,只需遵循以下简单的小步骤即可: 1) mysql\u set\u字符集(“utf8”,$conn);使用您的配置连接代码进行设置

2) mysql_查询(“设置名称‘UTF8’”); 在此处输入您的查询。。。。。。。。
mysql_set_charset(“UTF8”,queryResult);

你的php版本是什么?使用
phpinfo()
找出不起作用的地方,有什么变化?把它打印成3m x 1m标准,挂在你的办公室:
UTF-8,UTF-8无处不在
。相信我,总是使用UTF8会让你免于很多痛苦