1

每当我输出一个xml文件时,我总是在顶部得到9个空白行,有人知道问题是什么吗?我最后也得到了一个我不想要的时间戳:

<!-- 0.35s -->

这是错误:

XML Parsing Error: XML or text declaration not at start of entity
Location: http://example.com/controller/get
Line Number 9, Column 1:<?xml version="1.0" encoding="UTF-8" ?>

我放入$this->RequestHandler->setContent('xml','text/xml');了我的控制器beforeFilter(),视图如下所示:

<?php echo $xml->serialize($data); ?>

而布局看起来像这样:

<?php
    header("content-type: text/xml");
    echo $this->Xml->header();
    echo $content_for_layout;
?>

有任何想法吗?谢谢。

4

3 回答 3

2

您还可以设置 Configure::write('debug', 0); 在渲染之前进入控制器 beforeFilter() 或任何其他方法/serviceCall 以摆脱时间戳。

于 2010-06-21T16:38:53.637 回答
1

时间戳附加在 中app/webroot/index.php,因此您可以通过编辑此文件将其删除(您可以在文件末尾找到相应的代码)。

于 2010-06-21T09:32:00.743 回答
1

9 个空白行可能是因为您在项目中某些 php 文件的末尾有带空格的行。这让我在 CakePHP 中遇到了好几次。

有关在所有 php 文件末尾删除空行的简单方法,请参阅这篇文章:在 BOF 或 EOF 处查找所有带有空白或 WS 的文件

于 2011-02-03T17:00:27.027 回答