iso-8895-1至xml可接受的UTF-8

Lia*_*ley 1 php xml utf-8

我正在将text/html从网页解析为xml feed,text/html编码为iso-8895-1,而XML feed必须是UTF-8.我已经使用了html实体,但是我必须手动替换大量的字符,这是我到目前为止(仍然没有解析所有文本)

$desc = str_replace(array("\n", "\r", "\r\n"),"",$desc);
    $desc = str_replace(array("’","‘","”","“"),"'",$desc);
  $desc = str_replace("£","£",$desc);
    $desc = str_replace("é","é",$desc);
    $desc = str_replace("²","2",$desc);
    $desc = str_replace(array("-","•"),"‐",$desc);
$desc = htmlentities($desc, ENT_QUOTES, "UTF-8");
Run Code Online (Sandbox Code Playgroud)

Pek*_*ica 6

使用iconv().它允许您使用UTF-8中的本机字符 - 不需要HTML实体.

$data = iconv("ISO-8859-1", "UTF-8", $text);
Run Code Online (Sandbox Code Playgroud)

当从UTF-8编码到另一个字符集时,使用IGNORE或TRANSLIT来删除或音译不可翻译的字符.

或者,mb_*@ Gumbo显示的功能也可以.