本文整理匯總了PHP中Parse\ParseQuery::near方法的典型用法代碼示例。如果您正苦於以下問題:PHP ParseQuery::near方法的具體用法?PHP ParseQuery::near怎麽用?PHP ParseQuery::near使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類Parse\ParseQuery
的用法示例。
在下文中一共展示了ParseQuery::near方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: near
/**
* @param $column
* @param $latitude
* @param $longitude
* @param $limit
* @param array $keyToInclude
*
* @return Collection|ParseObject[]
*/
public function near($column, $latitude, $longitude, $limit = 10, $keyToInclude = [])
{
$location = new ParseGeoPoint($latitude, $longitude);
$this->query->near($column, $location);
$this->query->limit($limit);
for ($i = 0; $i < count($keyToInclude); $i++) {
$this->query->includeKey($keyToInclude[$i]);
}
return Collection::make($this->query->find($this->useMasterKey));
}
示例2: testGeoMaxDistanceWithUnits
public function testGeoMaxDistanceWithUnits()
{
ParseTestHelper::clearClass("PlaceObject");
// [SAC] 38.52 -121.50 Sacramento,CA
$sacramento = new ParseGeoPoint(38.52, -121.5);
$obj = ParseObject::create('PlaceObject');
$obj->set('location', $sacramento);
$obj->set('name', 'Sacramento');
$obj->save();
// [HNL] 21.35 -157.93 Honolulu Int,HI
$honolulu = new ParseGeoPoint(21.35, -157.93);
$obj = ParseObject::create('PlaceObject');
$obj->set('location', $honolulu);
$obj->set('name', 'Honolulu');
$obj->save();
// [51Q] 37.75 -122.68 San Francisco,CA
$sanfran = new ParseGeoPoint(37.75, -122.68);
$obj = ParseObject::create('PlaceObject');
$obj->set('location', $sanfran);
$obj->set('name', 'San Francisco');
$obj->save();
// test point SFO
$point = new ParseGeoPoint(37.6189722, -122.3748889);
// Kilometers
// baseline all
$query = new ParseQuery('PlaceObject');
$query->near('location', $point);
$results = $query->find();
$this->assertEquals(3, count($results));
// max with all
$query = new ParseQuery('PlaceObject');
$query->withinKilometers('location', $point, 4000.0);
$results = $query->find();
$this->assertEquals(3, count($results));
// drop hawaii
$query = new ParseQuery('PlaceObject');
$query->withinKilometers('location', $point, 3700.0);
$results = $query->find();
$this->assertEquals(2, count($results));
// drop sacramento
$query = new ParseQuery('PlaceObject');
$query->withinKilometers('location', $point, 100.0);
$results = $query->find();
$this->assertEquals(1, count($results));
$this->assertEquals('San Francisco', $results[0]->get('name'));
// drop SF
$query = new ParseQuery('PlaceObject');
$query->withinKilometers('location', $point, 10.0);
$results = $query->find();
$this->assertEquals(0, count($results));
// Miles
// max with all
$query = new ParseQuery('PlaceObject');
$query->withinMiles('location', $point, 2500.0);
$results = $query->find();
$this->assertEquals(3, count($results));
// drop hawaii
$query = new ParseQuery('PlaceObject');
$query->withinMiles('location', $point, 2200.0);
$results = $query->find();
$this->assertEquals(2, count($results));
// drop sacramento
$query = new ParseQuery('PlaceObject');
$query->withinMiles('location', $point, 75.0);
$results = $query->find();
$this->assertEquals(1, count($results));
$this->assertEquals('San Francisco', $results[0]->get('name'));
// drop SF
$query = new ParseQuery('PlaceObject');
$query->withinMiles('location', $point, 10.0);
$results = $query->find();
$this->assertEquals(0, count($results));
}