我正在尝试在 PHP Web 应用程序中生成 XML 文件:
<?php
...
header('Content-Type: application/xml');
header('Content-Disposition: attachment; filename=test.xml');
echo "<?xml version=\"1.0\"?>\r\n" .
...
奇怪的是,当使用我的服务器(分别是 PHP 版本 5.3.8/Apache 2.2.17 和 PHP 版本 5.3.10-1/Apache 2.2.22)时,在输出的开头插入了一个换行符(十六进制0a
) ,导致无法使用的无效 XML。还有一个关于这个的在线问题,未解决。
因此,如果我尝试echo "bug";
得到 4 个字节,而不是 3 个:0a 62 75 67
但是,当在本地使用 WAMP 服务器(PHP 5.4.3/Apache 2.4.2)时,我得到 3 个字节:62 75 67
.
- 这是一个已知的错误/功能吗?
- 是配置问题吗?
- Apache 还是 PHP 应该归咎于哪个?
- 我必须升级我的服务器吗?我宁愿不。