我将带有产品名称的注册商标符号存储在mysql表中。该表是utf8 Unicode。当我使用Smarty模板渲染页面时,我应该看到Product®
时看到Product®
。
单步执行之后,可以看到在渲染模板之前的右边,变量看起来像Product®
,但是在渲染之后,它添加了奇怪的Â
字符。我还使用php utf8_encode()
对此进行了测试,可以清楚地看到编码后添加的字符。
如何剥离此字符并进行渲染,使其不显示。我已经尝试过这样的事情:
$product= str_replace('®', '®', $product);
$product= html_entity_decode($product);
但是仍然看到产品名称中出现奇怪的Â
字符。我在SO上看到了类似字符的不同问题,但是现在有了如何处理它的解决方案。
答案 0 :(得分:0)
类似“ Mojibake”的声音,其中main android application
变成®
。
本文讨论了造成这种情况的各种原因:Trouble with UTF-8 characters; what I see is not what I stored