<?php //獲取該點周圍的4個點
$distance = 1;//範圍(單位千公尺)
$lat = 113.873643;
$lng = 22.573969;
define('earth_radius', 6371);//地球半徑,平均半徑為6371km
$dlng = 2 * asin(sin($qioutilidistance / (2 * earth_radius)) / cos(deg2rad($lat)));
$dlng = rad2deg($dlng);
$dlat = $distance/earth_radius;
$dlat = rad2deg($dlat);
$squares = array('left-top'=>array('lat'=>$lat + $dlat,'lng'=>$lng-$dlng),
'right-top'=>array('lat'=>$lat + $dlat, 'lng'=>$lng + $dlng),
'left-bottom'=>array('lat'=>$lat - $dlat, 'lng'=>$lng - $dln程式設計客棧g),
'right-bottom'=>array('lat'=>$lat - $dlat, 'lng'=>$lng + $dlng)
);print_r($squares['left-top']['lat']);
//從數庫查詢匹配的記錄
$info_sql = "select * from `a` where lat<>0 and lat> and lat and lngqioutili']} ";
//獲取兩點之間的距離
function getdistancebetweenpointsnew($latitude1, $longitude1, $latitude2, $longitude2)
$point1 = array('lat' => 40.770623, 'long' => -73.964367);
$point2 = array('lat' =>程式設計客棧 40.758224, 'long' => -73.917404);
$distance = getdistancebetweenpointsnew($point1['lat'], $point1['long'], $point2['lat'], $point2['long']);
foreach ($distance as $unit => $value)
?>
查詢附近的人 mongodb的實現
最近做乙個關於附近的人查詢,參考了很多資料 現在市面上主流的做法 1.用資料庫 2.用類存 3.用lucene 我選用的是用mongodb自帶的查附近的人的方法,如下 dbobject db new basicdbobject cityid json.parse dbobject near new ...
PHP 技巧 附近的人功能實現
授權獲取使用者的經緯度並存入資料庫 lng 字段 lat 字段 1.原生查詢 select convert 2 6378.137 asin sqrt pow sin 3.1415926535898 get lat lat 360 2 cos 3.1415926535898 get lat 180 c...
如何實現查詢附近的人
問題 給定乙個使用者a,返回與此使用者相距小於d的所有使用者。支援geo的後端儲存有mongodb,redis等。那麼如果讓我們實現,我們應該怎麼做呢?思路 圍繞此使用者生成乙個圓形,半徑是d,返回所有被此園覆蓋的使用者。方法1 先求方,再求園。如果直接求園,每乙個使用者都要計算距離值,無法利用到索...