在PHP响应中显示希伯来语单词

3
我正在通过一个PHP脚本发送JSON响应,其中包含一些希伯来语词汇。但是当我在浏览器上运行此脚本时,它显示'?'而不是希伯来字符。请注意,数据库使用的是hebrew_general_ci排序规则。需要您的帮助,谢谢。

你确认你的浏览器在显示“?”时是否设置为Charset Windows-1255(如果你使用的是Windows,任何标准的希伯来编码都应该可以工作)。 响应是UTF-8还是UTF-16? - nash
3个回答

1

你可能没有包含适当的CSS文件。同时,使用本地语言时charset变量也是另一个问题。如果您正在使用Unicode字体,请使用Utf-8。

此外,如果创建的eot字体不好,也可能会出现问题。我不确定希伯来语是否需要这样的字体。


我没有使用任何CSS文件。这只是一个简单的PHP脚本,运行在LAMP服务器上。它从数据库中获取一些数据(包含英语和希伯来语单词),并在浏览器上显示它(响应以JSON格式返回)。 - mudit

0

您需要在HTTP Content-Type头中设置适当的字符集,以便HTML页面最终能够显示JSON中包含的数据。尝试将以下内容添加到您的php脚本顶部:

header('Content-Type: text/html; charset="windows-1255"');

0

像其他人建议的那样,使用内容类型头:

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

尝试使用 charset=utf8 或者 charset=iso-8859-8。这里有一个字符集列表 在这里


我已尝试过UTF-8和iso-8859-8,但是没有任何作用。浏览器显示的是问号,而不是希伯来字符。 - mudit
你尝试过上面提供的列表中的其他选项吗? 具体来说,其中之一: 希伯来语(DOS) ##charset=DOS-862 希伯来语(ISO-Logical) ##charset=iso-8859-8-i 希伯来语(ISO-Visual) ##charset=iso-8859-8 希伯来语(Mac) ##charset=x-mac-hebrew 希伯来语(Windows) ##charset=windows-1255 - Bloeper

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接