我有原始文字:ferhat göçer
,我希望将其显示为ferhat göçer
。我尝试过很多东西,但都没有。
所有页面都有以下标题和元数据:
header('content-type: text/html; charset=utf-8');
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
我尝试过使用iconv
,utf8_deconde
以及其他所有功能但仍然没有运气。
如何为这些奇怪的字符显示正确的符号?我在数据库中有这些数据。
答案 0 :(得分:1)
它可能也与服务器有关。一些提供商将其apache2配置为强制ISO-XXXX编码,无论您通过PHP或页面的<header>
设置什么。
编辑:您可以通过检查pageload为您提供的实际标头来验证这一点。使用浏览器工具,例如Inspect - &gt; Chrome,Firebug中的网络面板或http://www.webconfs.com/http-header-check.php
等网站答案 1 :(得分:1)
utf8_decode
通常会做你想要的,因为你的字符串的内容是UTF-8编码的两次:
var_dump(utf8_decode('ferhat göçer'));
(see example。)但是,这假设如下:
另外,请记住,在对数据库进行任何INSERT / UPDATE之前,以下内容将防止问题重新出现:
mysql_query("SET NAMES 'utf8'");