我正在尝试使用PHP将我的本地数据库中的一些数据调用到我的扩展。但在打电话时我不知道为什么双引号显示为 。所以有些人可以帮我解决这个问题。
我也尝试过使用
htmlspecialchars()
但它根本没用。
谢谢
答案 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)
试试这个:
"
或"
如果您使用HTML entity
名称或hexadecimal
号码,则该字符将始终正确显示。
这与页面使用的字符集(编码)无关!