💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、豆包、星火、月之暗面及文生图、文生视频 广告
# Geocoding 地理位置 ``` <pre class="calibre29">``` Geocoding 地理位置 <span class="token">//geoAdd:将给定的空间元素(纬度、经度、名字)添加到指定的键里面。 这些数据会以有序集合的形式被储存在键里面, 从而使得像 GEORADIUS 和 GEORADIUSBYMEMBER 这样的命令可以在之后通过位置查询取得这些元素</span> <span class="token">//geoAdd($key, $longitude(经度), $latitude(纬度), $name [, $longitude, $latitude, $member, ...]);</span> $redis<span class="token1">-</span><span class="token1">></span><span class="token4">del</span><span class="token3">(</span><span class="token2">"myplaces"</span><span class="token3">)</span><span class="token3">;</span> $result <span class="token1">=</span> $redis<span class="token1">-</span><span class="token1">></span><span class="token4">geoAdd</span><span class="token3">(</span> <span class="token2">"myplaces"</span><span class="token3">,</span> <span class="token6">37.773</span><span class="token3">,</span> <span class="token1">-</span><span class="token6">122.431</span><span class="token3">,</span> <span class="token2">"San Francisco"</span><span class="token3">,</span> <span class="token1">-</span><span class="token6">157.858</span><span class="token3">,</span> <span class="token6">21.315</span><span class="token3">,</span> <span class="token2">"Honolulu"</span> <span class="token3">)</span><span class="token3">;</span> <span class="token">//geoHash(key,name1,name2,namen) 返回一个或多个位置元素的Geohash字符串 返回一个或多个元素组成的Geohash字符串数组</span> $hashes <span class="token1">=</span> $redis<span class="token1">-</span><span class="token1">></span><span class="token4">geoHash</span><span class="token3">(</span><span class="token2">"myplaces"</span><span class="token3">,</span> <span class="token2">"San Francisco"</span><span class="token3">,</span> <span class="token2">"Honolulu"</span><span class="token3">)</span><span class="token3">;</span><span class="token">//['87z9pyek3y0','8e8y6d5jps0']</span> <span class="token">//geoPos(key,name1,name2,namen):从键里面返回所有给定位置元素的位置(经度和纬度) 命令返回一个数组, 数组中的每个项都由两个元素(j经度,纬度)组成</span> $positions <span class="token1">=</span> $redis<span class="token1">-</span><span class="token1">></span><span class="token4">geoPos</span><span class="token3">(</span><span class="token2">"myplaces"</span><span class="token3">,</span> <span class="token2">"San Francisco"</span><span class="token3">,</span> <span class="token2">"Honolulu"</span><span class="token3">)</span><span class="token">//[[37.773, -122.431],[-157.858, 21.315]]</span> <span class="token">//GeoDist(key,name1,name2 [, $unit='m']):返回两个给定位置之间的距离 unit包含m、km、mi(英里)、ft(英尺)</span> $kilometers <span class="token1">=</span> $redis<span class="token1">-</span><span class="token1">></span><span class="token4">geoPos</span><span class="token3">(</span><span class="token2">"myplaces"</span><span class="token3">,</span> <span class="token2">"San Francisco"</span><span class="token3">,</span> <span class="token2">"Honolulu"</span><span class="token3">,</span><span class="token2">'km'</span><span class="token3">)</span><span class="token">//168.2752</span> <span class="token">//geoRadius($key, $longitudee(经度), $latitude(纬度), $radius(半径), $unit [, Array $options]):以给定的经纬度为中心, 返回键包含的位置元素当中, 与中心的距离不超过给定最大半径radius距离的所有位置元素</span> $redis<span class="token1">-</span><span class="token1">></span><span class="token4">geoRadius</span><span class="token3">(</span><span class="token2">"hawaii"</span><span class="token3">,</span> <span class="token1">-</span><span class="token6">157.858</span><span class="token3">,</span> <span class="token6">21.306</span><span class="token3">,</span> <span class="token6">300</span><span class="token3">,</span> <span class="token2">'mi'</span><span class="token3">)</span><span class="token3">;</span> $options<span class="token3">[</span><span class="token2">'count'</span><span class="token3">]</span> <span class="token1">=</span> <span class="token6">1</span><span class="token3">;</span> $redis<span class="token1">-</span><span class="token1">></span><span class="token4">geoRadius</span><span class="token3">(</span><span class="token2">"hawaii"</span><span class="token3">,</span> <span class="token1">-</span><span class="token6">157.858</span><span class="token3">,</span> <span class="token6">21.306</span><span class="token3">,</span> <span class="token6">300</span><span class="token3">,</span> <span class="token2">'mi'</span><span class="token3">,</span> $options<span class="token3">)</span><span class="token3">;</span> <span class="token">//geoRadiusByMember($key, $name, $radius, $units [, Array $options]):作用和 geoRadius一样只是原点是name决定而不是像geoRadius输入经度和纬度来决定</span> $redis<span class="token1">-</span><span class="token1">></span><span class="token4">geoRadiusByMember</span><span class="token3">(</span><span class="token2">"myplaces"</span><span class="token3">,</span> <span class="token2">"Honolulu"</span><span class="token3">,</span> <span class="token6">300</span><span class="token3">,</span> <span class="token2">'mi'</span><span class="token3">)</span><span class="token3">;</span> ``` ```