git地址php
須要使用composer,安裝composer, composer中國鏡像git
若是是應用在項目當中的話找到根目錄,須要和 composer.json
同級github
composer require gaopengfei/redis_lbs
require_once __DIR__.'/vendor/autoload.php'; $lbs = new \LBS\Services\LBSService();
$add_params = [ [ 'name' => 'yabao_road', 'long' => '116.43620200729366', 'lat' => '39.916880160714435' ], [ 'name' => 'jianguomen', 'long' => '116.4356870231628', 'lat' => '39.908560377800676' ], [ 'name' => 'chaoyangmen', 'long' => '116.4345336732864', 'lat' => '39.924466658329585' ], [ 'name' => 'galaxy_soho', 'long' => '116.4335788068771', 'lat' => '39.921372916981106' ], [ 'name' => 'cofco', 'long' => '116.43564410781856', 'lat' => '39.92024564137184' ], [ 'name' => 'fesco', 'long' => '116.435182767868', 'lat' => '39.91811857809279' ], ]; /** * 在集合中新加一個座標 * @param array $params * 結構是 ['name'=>'xxx','long'=>'1.2321','lat'=>'1.3112']或者[['name'=>'xxx','long'=>'1.2321','lat'=>'1.3112']] * @param null $key * @return int */ $res = $lbs->add($add_params); 返回 int 6
/** * 刪除集合中指定元素 * @param $name * @param null $key 默認存在集合,能夠指定 * @return int */ $res = $lbs->del('gao1'); 返回 int 0 或 1 若是是指定的集合名就 $res = $lbs->del('gao1','set-name');
/** * 查詢範圍內元素,若是不轉 key就用默認的 * @param $long 經度 * @param $lat 緯度 * @param $radius 範圍 * @param $unit 單位 (僅支持 m,km,ft,mi) * @param null $key 集合名 * @return mixed */ $search = $lbs->search('116.435182767868','39.91811857809279',500,'m'); 返回數組 array:4 [▼ 0 => array:2 [▼ "name" => "fesco" "dist" => "0.1250" ] 1 => array:2 [▼ "name" => "yabao_road" "dist" => "162.8454" ] 2 => array:2 [▼ "name" => "cofco" "dist" => "239.7758" ] 3 => array:2 [▼ "name" => "galaxy_soho" "dist" => "386.9165" ] ]
/** * 根據集合中的元素查詢範圍內元素,若是不轉 key就用默認的 * @param $name 集合中的元素名 * @param $radius 範圍 * @param $unit 單位 * @param null $key 集合名 * @return mixed */ $search = $lbs->->searchByMembers('fesco',500,'m'); 返回數組 array:4 [▼ 0 => array:2 [▼ "name" => "fesco" "dist" => "0.1250" ] 1 => array:2 [▼ "name" => "yabao_road" "dist" => "162.8454" ] 2 => array:2 [▼ "name" => "cofco" "dist" => "239.7758" ] 3 => array:2 [▼ "name" => "galaxy_soho" "dist" => "386.9165" ] ]
/** * 列出集合中的內容 * @param $key 集合的key * @param int $start 起始位置 * @param int $end 結束位置 -1 爲直到末尾 * @return array */ $list = $lbs->list($test->geoset_name,2,-1); 返回數組 array:6 [▼ 0 => "jianguomen" 1 => "yabao_road" 2 => "fesco" 3 => "cofco" 4 => "galaxy_soho" 5 => "chaoyangmen" ]
博客原文redis