我正在使用PHP来显示一些外语文本。
echo '<li> NO ENGLISH </li>';
要显示用PHP编写的非英语语言,我使用:
header('Content-Type: text/html; charset=windows-1255');
但是,当我从表单中获取已发布的变量并尝试对其进行响应时,它会显示垃圾。我注意到设置下一个标题,修复它:
header('Content-Type: text/html; charset=UTF-8');
此标头正确显示它,但在第一个示例中无法显示它。
如何在同一个文件中组合这些不同的标头设置。?
不能在单个文档中混合编码。整个文档必须在一个连贯的编码中,并且只有一个标头集表示该编码。如果您从多个来源接收到不同编码的字符串,请使用mb_convert_encoding
或iconv
将它们转换为一个统一编码(最好是UTF-8)。
如果'<li> NO ENGLISH </li>'
只是保存在源代码文件中的硬编码文本,请在文本编辑器中以其他编码保存该文件。全程查看UTF-8,并在Web应用程序中前后处理Unicode。