标题特殊字符转换?

时间:2011-12-29 09:01:58

标签: php utf-8 header meta-tags

我的php页面标题上有char转换的问题。

我必须开发一段代码,意思是WS(xml-rpc协议),可以与python中编写的另一段代码进行交互。

这是python片段的输出:

Output={'metaTagKeyWords': '', 'metaTagTitle': '10% DISCOUNT FOR 3 NIGHTS','metaTagDescription': 'Questa \xc3\xa8 una prova: devo vedere che succede.\r\n\r\nProva prova.\r\n\r\nDaje.\r\n\r\nENGLISH VERSION !!!!\r\n'}

所以我必须转换一些char:首先是 \ xc3 \ xa8 ,这是“è”的unicode转换,第二次是“\ r \ nn \“字符。

我知道如何处理“\ r \ n \”字符,但我不知道如何转换unicode字符。

我已经尝试做过这样的事情:

htmlentities($data[$META_TITLE_KEY], ENT_QUOTES, 'UTF-8')

但它没有用。

此外,我已经尝试在pyhon中转换UTF-8中的字符串(因此实体将是 u'\ xc3'或类似的东西,但结果大致相同。 )

附加信息:必须在php文件头上使用转换为“元标记描述”标记。

EDIT1:

似乎是,我们相信UTF-8,而不是LATIN-1。所以,如果我更改标题部分:

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

<meta http-equiv="content-type" content="text/html;charset=ISO-8859-1" />

它有效。

但我必须拥有一个utf-8字符集;所以我认为必须在python应用逻辑中做一些事情(因为当我从编辑器转到DB时,我编码的东西,而当我从DB返回到编辑器时,我解码了一些东西)。 保持关注更多信息

EDIT2:

也许我使用一些函数将我的数据保存到Postrges DMB,在latin-1中转换数据然后在utf-8中转换。所以,如果我添加这条指令:

d_meta[element] = codeDbToEditor(d_meta[element]).replace('\r\n', ' ').decode('latin-1')
一切似乎都有效。

我有没有正确的“insipration”?

1 个答案:

答案 0 :(得分:0)

$str="Hello Loréane";
echo utf8_encode($str);

希望它有助于