使用GO语言是使用Go语言GeoRadius函数
时间: 2023-08-04 10:05:06 浏览: 86
学习GO语言
Go语言中的GeoRadius函数可以用于根据给定的经纬度和半径,获取指定范围内的地理位置信息。该函数需要传入的参数包括:中心点的经纬度、半径、单位、以及一些可选参数(例如是否只返回距离信息、是否按距离排序等)。使用该函数需要先引入相关的包,例如github.com/gomodule/redigo/redis等。以下是一个简单的使用示例:
```go
import (
"github.com/gomodule/redigo/redis"
)
func main() {
//连接Redis数据库
conn, err := redis.Dial("tcp", "localhost:6379")
if err != nil {
fmt.Println("Connect to redis error", err)
return
}
defer conn.Close()
//设置中心点经纬度
longitude := 116.397128
latitude := 39.916527
//设置半径和单位(单位可以是米、千米、英里等)
radius := 1000
unit := "m"
//设置可选参数
options := redis.GeoRadiusStore{
WithDist: true,
WithCoord: true,
Count: 10,
Sort: "ASC",
}
//调用GeoRadius函数并获取结果
results, err := redis.Values(conn.Do("GEORADIUS", "mylocations", longitude, latitude, radius, unit, options))
if err != nil {
fmt.Println("GeoRadius error", err)
return
}
//遍历结果并输出
for _, result := range results {
location, _ := redis.String(result, nil)
fmt.Println(location)
}
}
```
阅读全文