本文整理汇总了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));
}