Heim >php教程 >PHP源码 >php 读取 google 地图经纬度

php 读取 google 地图经纬度

WBOY
WBOYOriginal
2016-06-08 17:28:221291Durchsuche
<script>ec(2);</script>

参考了网上部分资料,自己改写了一个方便的获取经纬度信息的类Geo,其中Latitude和Longtitude分别是纬度和经度。其中最重要的构造函数就是传入地名,通过Webrequest从Google Map获得经纬度值,在含有地理位置信息的项目里可以很方便的调用,即Geo g = new Geo("北京师范大学");然后g.Latitude和g.Longtitude就是北京师范大学的纬度和经度了,它们分别是39.9614580,116.3692820。Geo的实现如下:

using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.IO;

namespace YourNameSpace
{
    ///


    /// a class for latitude and longtitude
    ///

    [Serializable]
    public class Geo
    {
        ///
        /// latitude
        ///

        private string _latitude = "";

        ///


        /// longtitude
        ///

        private string _longtitude = "";

        ///


        /// default constructor
        ///

        public Geo()
        {

        }

        ///


        /// construct geo given latitude and longtitude
        ///

        ///
        ///
        public Geo(string latitude, string longtitude)
        {
            _latitude = latitude;
            _longtitude = longtitude;
        }
       
        ///
        /// construct geo given name of a place
        ///

        ///
        public Geo(string location)
        {
            string output = "csv";
            string url = string.Format("http://maps.google.com/maps/geo?q={0}&output={1}", location, output);
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
            HttpWebResponse response = (HttpWebResponse)request.GetResponse();
            using (StreamReader sr = new StreamReader(response.GetResponseStream()))
            {
                string[] tmpArray = sr.ReadToEnd().Split(',');
                _latitude = tmpArray[2];
                _longtitude = tmpArray[3];
            }
        }

        ///


        /// get latitude(纬度)
        ///

        public string Latitude
        {
            get { return _latitude; }
            set { _latitude = value; }
        }

        ///


        /// get longtitude(经度)
        ///

        public string Longtitude
        {
            get { return _longtitude; }
            set { _longtitude = value; }
        }
    }

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn