我想在我的PHP脚本中回显$ html变量(其中包含页面的html代码)到浏览器。但是如果我的$ html有西里尔符号,那么echo就会打破它的符号 - 所有符号都在页面之前 - 但是接下来的所有符号都是空的,这是什么原因?
答案 0 :(得分:1)
$html
值的字符编码不适合您声明输出的字符编码。您需要识别$html
的字符编码,并确保正确声明您的输出要使用它进行编码。
最好的方法是HTTP header。您可以使用header
:
header('Content-Type: text/html;charset=utf-8');
这声明内容使用UTF-8进行HTML编码。
除此之外,PHP和Web服务器具有默认的字符编码,如果没有指定其他编码,则会发送这些编码。在PHP中,默认字符编码由default_charset指定;至于Apache Web服务器,它由AddDefaultCharset
指定。