繁体   English   中英

Facebook画布中的特殊字符

[英]special characters in facebook canvas

即时通讯在Facebook画布中遇到特殊字符问题。

我将尚未安装该应用程序的用户朋友收录并显示出来。 但是,当我显示它们时,特殊字符看起来好像它们的编码方式不同。

例如,á显示为á,é显示为é,依此类推。

iv尝试了一些无效的方法:

<? 
$search=array('Ã', 'á', 'é','í','ó','ú','ñ');
$replace=array('&Aacute;', '&aacute;','&eacute;','&iacute;','&oacute;','&uacute;','&nacute;',);

echo str_replace($search,$replace, $friend_name) ?>

<? echo htmlentities($friend_name) ?>

一些更多信息:我正在使用Facebook的php sdk,并设置了气象标记:

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

谢谢

编辑:应用utf8_decode()并解决了问题。 如果没有此功能,是否有解决问题的方法?

闻起来像字符编码问题(UTF,cp1252等),而不是转义问题( \\htmlspecialchars )。 检查您的源和目标编码; 他们可能不匹配。

顺便说一句,值得一提的是,PHP的默认内部编码从5.4版更改为UTF-8,因此您可能还会遇到由版本不匹配引起的错误。

您应该对该文档进行UTF-8编码。 这取决于您使用其编码方式的编辑器。 在notepad ++中,有一个“编码”选项卡,您应使用不带BOM的UTF-8。 这解决了我的facebook问题。

即使您设置了meta标签,这还是不够的,但是您应该对文档UTF-8进行编码。 如果执行此操作,它将使您不必编码/解码最相似的内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM