1

在我的系统上(运行 PHP 5.3.15、Apache 2.2.22)xajax 工作正常。在另一个运行 PHP 5.2.17、Apache 2.2.22 的系统上,xajax 响应前面有一个空行。这可以在 Firebug Network 选项卡 XHR->Response 中看到。前面确实有一个空行

<?xml version="1.0" encoding="utf-8" ?>

到底是什么原因造成的,我该如何解决?

在 XML 文档开始之前有一个空行是错误并导致错误

Error: XML or text declaration not at start of entity

在浏览器的错误控制台中。

4

1 回答 1

1

查看所有在您预期的 XML 输出之前执行的 PHP 包含。<?php很可能其中一个或多个在打开之前或关闭之后有错误的换行符,该换行符?>在 XML 标头之前作为输出传递给浏览器。

      <-- Line break
<?php

?>
      <-- Line break

如果您在类 UNIX 系统上,您可以使用head来检查每个文件的第一行或tail最后一行。查找不以开头或结尾的文件<?php / ?>

# In a directory of PHP files...
head -n1 *.php
tail -n1 *.php
于 2012-12-06T02:49:52.530 回答