【问题标题】:Setting Default "Save as Type" to .kml instead of .php将默认“另存为类型”设置为 .kml 而不是 .php
【发布时间】:2012-02-09 09:11:29
【问题描述】:

这里的本教程是使用php从数据库生成kml的好来源...http://code.google.com/apis/kml/articles/phpmysqlkml.html

但是我的问题是,当脚本运行时,生成的文件保存为 .php,而不是 .kml。我怎样才能使它成为.kml?下面是具体代码。谢谢!

<?php 
$kml = array('<?xml version="1.0" encoding="UTF-8"?>'); 
$kml[] = '<kml xmlns="http://www.opengis.net/kml/2.2">'; 
$kml[] = '<Document>'; 
$kml[] = '</Document>'; 
$kml[] = '</kml>'; 
$kmlOutput = join("\n", $kml); 
header('Content-type: application/vnd.google-earth.kml+xml'); 
echo $kmlOutput; 
?> 

【问题讨论】:

    标签: php mysql google-maps header kml


    【解决方案1】:

    您正在访问以生成文件的文件可能具有 php 扩展名,因此浏览器认为这是您正在下载的文件的扩展名

    确保在标题中设置带有扩展名的文件名:

    header('Content-Disposition: attachment; filename="file.kml"');
    

    【讨论】:

    • 请记住,如果您不指定此标头,您的浏览器会将当前执行的脚本作为文件名发送。
    • @BarryChapman 谢谢兄弟!抱歉,我先阅读了另一条评论,但我给你打了勾!
    【解决方案2】:
    header('Content-type: application/vnd.google-earth.kml+xml'); 
    header('Content-disposition: attachment; filename="myfilename.kml"'); 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-15
      • 1970-01-01
      • 2015-09-04
      • 1970-01-01
      • 2021-01-20
      • 2020-07-24
      • 1970-01-01
      • 2018-03-30
      相关资源
      最近更新 更多