Celui-ci a été lancé dans la version 3.2 de Redis. Il peut être utilisé pour calculer des informations de localisation géographique, la distance entre deux lieux, les personnes qui l'entourent et d'autres scénarios.
Ajoute l'emplacement géospatial spécifié (latitude, longitude, nom) à la clé spécifiée.
Ici, vous pouvez utiliser certains outils de requête de latitude et de longitude en ligne pour obtenir des données.
geoadd china:city 121.472644 31.231706 shanghai geoadd china:city 120.619585 31.299379 suzhou geoadd china:city 116.405285 39.904989 beijing geoadd china:city 113.280637 23.125178 guangzhou 113.26197 23.10379 haizhuqu
Allez sur la clé china:city
et ajoutez la longitude et la latitude de 5 lieux : Shanghai, Suzhou, Pékin, Guangzhou et le district de Haizhu de Guangzhou. china:city
这个key里,添加了5个地方的经纬度:上海、苏州、北京、广州、广州海珠区。
从key里返回所有给定位置元素的位置(经度和纬度)。
geopos china:city suzhou shanghai
返回位置的坐标。
返回两个给定位置之间的距离。
如果两个位置之间的其中一个不存在, 那么命令返回空值。
指定单位的参数 unit 必须是以下单位的其中一个:
m 表示单位为米(默认)。
km 表示单位为千米。
mi 表示单位为英里。
ft 表示单位为英尺。
geodist china:city suzhou shanghai km
以给定的经纬度为中心, 返回键包含的位置元素当中, 与中心的距离不超过给定最大距离的所有位置元素。
georadius china:city 121.49295 31.22337 30 km
我以 上海黄浦区的坐标121.49295 31.22337为中心,寻找30km之内的城市。
再远点,100km之内,还可以找到suzhou
,加上withdist
显示出距离。
加上withcoord
可以返回经纬度。
再加上count
,只返回我指定的数量。
georadius china:city 121.49295 31.22337 100 km withdist withcoord count 1
这个命令和 georadius命令一样, 都可以找出位于指定范围内的元素。
但是这里不是指定中心点坐标,而是指定以哪个元素为中心点。
georadiusbymember china:city suzhou 100 km withdist
这里以元素suzhou
2. geopos
geohash china:city suzhou shanghai
Renvoie les coordonnées de l'emplacement.
3. géodisteRenvoie la distance entre deux emplacements donnés. Si l'une des deux positions n'existe pas, la commande renvoie une valeur nulle. L'unité du paramètre spécifiant l'unité doit être l'une des unités suivantes :
zrem china:city haizhuqu
suzhou
et ajouter withdist
pour afficher la distance. 🎜🎜Ajoutez withcoord
pour renvoyer la latitude et la longitude. 🎜🎜🎜🎜Pluscount, renvoie uniquement le montant que je spécifie. 🎜rrreee🎜🎜🎜5 . georadiusbymember 🎜🎜Cette commande est la même que la commande georadius, qui peut trouver des éléments dans la plage spécifiée. 🎜🎜Mais ici nous ne précisons pas les coordonnées du point central, mais précisons quel élément est le point central. 🎜rrreee🎜Ici, en prenant l'élément suzhou
comme point central, trouvez d'autres éléments dans un rayon de 100 km vendredi. 🎜🎜🎜🎜🎜 6. geohash🎜🎜Un ou plusieurs éléments positionnels, représentés par un hachage. 🎜rrreee🎜🎜🎜🎜Renvoie une chaîne Geohash de 11 caractères, qui représente la latitude et la longitude actuelles. Elle change la forme et convertit la longitude et la latitude bidimensionnelles en une chaîne unidimensionnelle. 🎜🎜Si plus les deux cordes dans la structure ci-dessus sont proches, plus la distance entre les deux positions sera proche. Comprenez simplement ceci. 🎜🎜Le principe sous-jacent de la géo est toujours zset Nous pouvons utiliser la commande zset pour faire fonctionner la géo, par exemple en supprimant des villes de la géo. 🎜rrreee🎜🎜🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!