ffogarasi / kmz-parser
将 KML 文件转换为对象
1.1.2
2023-05-08 15:57 UTC
Requires
- php: >=7.0
Requires (Dev)
- phpunit/phpunit: ^6.5
README
最直观的 KML 解析器。文件的每一部分都由一个特殊类表示,因此您所需的所有内容都可以通过可预测和提示的方法访问。
安装
使用 composer
composer require ffogarasi/kmz-parser
用法
一个简单示例,如何使用解析器
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2" id="test">
<Document>
<name>Document name</name>
<description>Description</description>
<Style id="icon-1899-0288D1-normal">
# ...
</Style>
<Style id="icon-1899-0288D1-highlight">
# ...
</Style>
<StyleMap id="icon-1899-0288D1">
# ...
</StyleMap>
<Folder>
<name>Unnamed layer</name>
# ...
</Folder>
</Document>
</kml>
use StepanDalecky\KmlParser\Parser;
$parser = Parser::fromFile('file.xml');
// $parser = Parser::fromString($xmlString);
$kml = $parser->getKml();
$document = $kml->getDocument();
$styles = $document->getStyles();
echo $styles[0]->getId(); // icon-1899-0288D1-normal
$folders = $document->getFolders();
echo $folders[0]->getName(); // Unnamed layer
更多示例请参阅测试。
不支持 KML 元素?
此库的定制开发不再计划进行。处理尚未涵盖的元素有两种方法
- 分叉此库,添加您需要的元素,然后创建合并请求回到此库。
- 使用紧急方法
Entity::getElement()
。