为什么我得到�而不是双引号?

时间:2015-01-07 08:50:13

标签: php html database google-chrome-extension

我正在尝试使用PHP将我的本地数据库中的一些数据调用到我的扩展。但在打电话时我不知道为什么双引号显示为 。所以有些人可以帮我解决这个问题。

我也尝试过使用

htmlspecialchars()

但它根本没用。

谢谢

3 个答案:

答案 0 :(得分:0)

  

试试这个

$var = "YOUR TEXT";
$foo = mb_substr($var,0,142, "utf-8");
  

说明:如果您看到该字符( U + FFFD“REPLACEMENT CHARACTER”),通常意味着文本本身以某种形式的单字节编码进行编码,但在其中一个unicode中进行解释编码(UTF8或UTF16)。

     

如果是相反的话,它通常会看起来像这样:ä。

     

原始编码可能是ISO-8859-1,也称为Latin-1。您可以在不更改脚本的情况下进行检查:浏览器为您提供了以不同编码重新解释页面的选项 - 在Firefox中使用“查看” - > “字符编码”。

如果上面没有尝试,请执行以下操作:

  

要使浏览器使用正确的编码,请添加如下所示的HTTP标头:

header("Content-Type: text/plain; charset=ISO-8859-1");
or put the encoding in a meta tag:

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

Alternatively you could try to read from the database in another encoding (UTF-8, preferably) or convert the text with iconv().

答案 1 :(得分:0)

如果有效,请尝试使用此标题表示评论

header('Content-Type: text/html; charset=utf-7');

答案 2 :(得分:0)

试试这个:

&#34;&quot;

如果您使用HTML entity名称或hexadecimal号码,则该字符将始终正确显示。 这与页面使用的字符集(编码)无关!