0

我需要做的是开发一个网页,允许用户在硬盘驱动器上指定一个 KML 文件,然后我在后端的代码(在 PHP 中)将为该 KML 生成 GPX 文件。我似乎找不到有关如何为其编写代码的指针,我猜应该是非常简单的解析技术。

我需要在这里实现类似这个工具的功能:http ://www.gpsvisualizer.com/convert_input

但他们没有为它提供 API。关于我如何解决这个问题的任何指示?

4

2 回答 2

0

你见过这个 php 脚本吗?使用 PHP 从 Google KML 转换为 GPS 交换格式 GPX -- Travis Hydzik 的博客

效果很好。

我在处理脚本时只遇到一个错误,即: Undefined offset: 1 in kml-to-gpx.php on line 147 这是由第一个坐标之前和最后一个坐标之后的空格引起的,在任何集合中源 kml 文件。尽管没有数值,但该空白被添加为纬度和经度图。

您可以通过添加来下载文件

$u_filename = $u_parts['filename'] . ".gpx";
header("Content-Disposition: attachment;filename='$u_filename';");

header("Content-Type: text/xml");
于 2014-02-02T06:00:21.600 回答
0

首先,您需要知道此转换可能仅适用于一小部分 KML 文件。因为 KML 是比 GPX 更广泛的文件 (XML) 格式。正如维基百科所说,KML 旨在“表达地理注释和可视化”。这些可能是 GPX 中无法表示的形状。GPX 仅用于 GPS 数据——数据记录器由 GPS(轨迹、航路点)或在计算机上创建以供以后在 GPS 中使用(路线、航路点)。

也就是说, gpsvisualiser主要使用 gpsbabel。这不完全是一个 PHP 解决方案,但如果您可以安装运行来自 PHP (gpsbabel) 的外部命令,这将是实现它的最简单方法。

于 2013-10-23T10:54:16.710 回答