Redis GEO 主要用于存储地理位置信息,并对存储的信息进行操作,该功能在 Redis 3.2 版本新增。
Redis GEO 操作方法有:
- geoadd:添加地理位置的坐标。
- geopos:获取地理位置的坐标。
- geodist:计算两个位置之间的距离。
- georadius:根据用户给定的经纬度坐标来获取指定范围内的地理位置集合。
- georadiusbymember:根据储存在位置集合里面的某个地点获取指定范围内的地理位置集合。
- geohash:返回一个或多个位置对象的 geohash 值。
geoadd 示例:
$redis->geoadd("city", 117.224311, 39.111515, "天津")
geopos 示例:
$redis->geopos("city", "天津")
geodist 示例:
$redis->geodist("city","天津", "北京","km")
georadius 示例:
$redis->georadius("city", 117.224311, 39.111515, 1000, "km", ['WITHDIST','ASC'])
georadiusbymember 示例:
$redis->georadiusbymember("city", "天津", 200, "km", ['WITHCOORD', 'WITHDIST', 'ASC'])
//Array ( [0] => Array ( [0] => 天津 [1] => 0.0000 [2] => Array ( [0] => 117.22431153059005737 [1] => 39.11151424175071867 ) ) [1] => Array ( [0] => 北京 [1] => 113.8093 [2] => Array ( [0] => 116.40378087759017944 [1] => 39.91543907825245441 ) ) )
geohash 示例
$redis->geohash("city", "天津", "北京")
转载请注明:苏demo的别样人生 » php关于redis geo命令的常用示例