zoukankan      html  css  js  c++  java
  • postgis 利用 php 返回geojson格式数据

    直接上代码

    1、db_config.php

    <?php
    
    /*
     * All database connection variables
     */
       $host        = "host=127.0.0.1";
       $port        = "port=5432";
       $dbname      = "dbname=soil";
       $credentials = "user=postgres password=123456";
    ?>

    2、getGeojson.php

    <?php
    
    header("Access-Control-Allow-Origin: *"); 
     
    require_once __DIR__ . '/db_config.php';
    
    $dbconn = pg_connect("$host $port $dbname $credentials") or die('connection failed');
    
    $result = pg_query($dbconn, "select id,name, ST_AsGeoJSON(geom) from nj_polygon");
    if (!$result) {
      echo "An error occurred.
    ";
      exit;
    }
     
    # Build GeoJSON
    $output    = '';
    $rowOutput = '';
    // check for empty result
    if (pg_num_rows($result) > 0) {
        // looping through all results 
        while ($row = pg_fetch_row($result)) {
            $rowOutput = (strlen($rowOutput) > 0 ? ',' : '') . '{"type": "Feature", "geometry": ' . $row[2] . ', "properties": {"id":"' .$row[0] .'","name":"' . $row[1] .'"}';
            $rowOutput .= '}';
            $output .= $rowOutput;
        }
        #echo json_encode($geojson, JSON_NUMERIC_CHECK);
        $output = '{ "type": "FeatureCollection", "features": [ ' . $output . ' ]}';
        echo $output;
    } else {
        echo "no data";
    }
    pg_close($dbconn);
    ?>

    访问链接即可返回geojson数据

  • 相关阅读:
    String
    Map和Set
    js的栈与堆
    js的私有属性
    随便谈一谈原型
    前端页面优化提速
    nth-child和nth-of-type
    重复输出字符串
    闭包
    mongodb内嵌文档的查询
  • 原文地址:https://www.cnblogs.com/marost/p/7354345.html
Copyright © 2011-2022 走看看