带有utf-8的xml PHP标头

msm*_*fra 14 php xml dom header character-encoding

我正在使用header()函数将文件转换为XML标准.问题是我用的时候<?php header("Content-type: text/xml; charset=utf-8"); ?>它只是渲染<?xml version="1.0"?>,没有enconding/charset.我错误地使用它了吗?

Joh*_*ess 13

header()函数只修改HTTP标头.您发布的代码设置了Content-Type标题,这对于告诉浏览器和其他客户端您正在服务的文件类型非常重要.

<?xml version="1.0"?>您所谈论的行是文档本身的一部分,不受HTTP标头的影响.

您的标签表示您正在使用DOM来创建XML文档.如果您将DomDocument构造函数更改为也传递charset,

$doc = new DomDocument('1.0', 'UTF-8');
Run Code Online (Sandbox Code Playgroud)

它应该在XML文档中输出该字符集.