我需要打印以下字符串,但在php中获得了另一个输出。
$test = "?s'd – b]zel/";
echo $test;
输出为::?s'd-b] zel / 我需要输出相同的字符串。字符' - '是尼泊尔字体的特殊字符。但是,它显示 - 而不是 - 。那么,解决方案是什么?
EDIT 当我使用json_encode($ test)时,我得到了输出“?s'd \ u2013 b] zel /”。但我不需要unicode,我需要“?s'd - b] zel /”作为输出。我该怎么办?
答案 0 :(得分:0)
答案 1 :(得分:0)
我假设您在控制台上运行PHP - 如果是这种情况,您应该更改控制台设置。
如果您在网络上运行 - 您应该更改页面编码或转义您正在显示的字符。这可以通过在HTML中添加以下内容来完成:
答案 2 :(得分:0)
这很可能是因为您使用的是UTF8编码字符(因此您的–
不是“正常”短划线-
,但同时您的HTML文档未使用UTF8编码,而是回归(通常) )Latin1。“清理”你的$test
字符串,或修复HTML以正确声明使用的编码:
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
答案 3 :(得分:0)
确保您的文档和HTML编码相同(推荐,UTF8)。
您的PHP字符集是由您正在使用的文本编辑器设置的。
您的HTML字符集可以通过发送标题来确定(这是推荐的方式!)
header("Content-type: text/html; charset=utf-8");