定制 nieuwland/ogc-serializer 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

nieuwland/ogc-serializer

最新稳定版本:v1.7

Composer 安装命令:

composer require nieuwland/ogc-serializer

包简介

(de)serialize ogc documents

README 文档

README

Build Status

Read documents from OGC (Open Geospatial Consortium) web service interfaces. Similar to OWSLib but without a http client.

Supports:

  • WMS 1.3.0 capabilities
  • WFS 2.0.0 and 1.1.0 capabilities
  • WMTS 1.0 capabilities
  • Reading WFS schema from describefeaturetype request

Planned:

  • OGC feature api

Install

composer require nieuwland/ogc-serializer

Planned

This package is in development!

(de)Serialize WMS, WFS and WMTS getCapabilities and related.

Example

Reading capabilities

<?php

use Nieuwland\OgcSerializer\SerializerFactory;
use Nieuwland\OgcSerializer\Type\WMS\Capabilities\Capabilities130;

$serializer   = SerializerFactory::create();
/** @var Capabilities130 $capabilities */
$capabilities = $serializer->deserialize($xml, Capabilities130::class, 'xml');
$layer = $capabilities->getLayer('mylayer');

extracting common used props

The project has some objects for easy data transfer to clients unaware of differences between the protocols.

<?php

use Nieuwland\OgcSerializer\Generic\ServiceCapabilitiesFactory;
use Nieuwland\OgcSerializer\SerializerFactory;

$serializer   = SerializerFactory::create();
/** @var Capabilities130 $capabilities */
$capabilities = $serializer->deserialize($xml, Capabilities130::class, 'xml');
$genericCapabilities = ServiceCapabilitiesFactory::create($capabilities);
$genericCapabilities->getLayerNames();

WFS schema

<?php

use Nieuwland\OgcSerializer\Utils\WfsSchemaElement;

$reader = new WfsSchemaReader()
$fields = $reader->extractFields($xml, 'bestuurlijkegrenzen:gemeenten');
foreach ($fields as $field) {
    echo $field->getName() . $field->getType();
}

Contribute

  • Follow the coding standards defined in phpcs.xml.dist
  • Add tests for your code

Professional Support

For eventual paid support please write an email to develop@nieuwland.nl.

统计信息

  • 总下载量: 2.37k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-07-18