PHP MVC框架+生成KML文件

时间:2014-02-16 23:15:46

标签: php kml

我在php中实现了一个基本的mvc框架。问题是,当我想创建一个未打开的动态kml文件时,因为生成了空格开头的文件。如果我从任何文件(而不是框架)执行此操作,它都可以正常工作。

链接:localhost / Radio / index / asset

Controller:indexController.php 方法:asset()

代码:

public function asset() {

    $dom = new DOMDocument('1.0', 'UTF-8');



    $kmlOutput = $dom->saveXML();
    $kmlOutput = trim($kmlOutput);              
    header('Content-type: application/vnd.google-earth.kml+xml');
    header('Content-disposition: attachment; filename="myfilename.kml"');
    echo  $kmlOutput;

}
Google地球中的

错误:

error

kml generate:

enter image description here

提前致谢。

1 个答案:

答案 0 :(得分:0)

输出开头的空白通常是由结束php tag背后的换行引起的。

<?php¶
¶
// Some code here¶
¶
?>¶
¶

<?php ?>以外的任何东西都被视为输出。因此,永远不要在库文件中使用结束标记。

quote Zend Framework

  

对于仅包含PHP代码的文件,结束标记(“?&gt;”)永远不会   允许的。它不是PHP所要求的,省略它会阻止它   意外地将尾随的白色空间注入响应中。