当前位置: 首页>>代码示例>>PHP>>正文


PHP ParseQuery::withinMiles方法代码示例

本文整理汇总了PHP中Parse\ParseQuery::withinMiles方法的典型用法代码示例。如果您正苦于以下问题:PHP ParseQuery::withinMiles方法的具体用法?PHP ParseQuery::withinMiles怎么用?PHP ParseQuery::withinMiles使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Parse\ParseQuery的用法示例。


在下文中一共展示了ParseQuery::withinMiles方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: within

 /**
  * @param $column
  * @param $latitude
  * @param $longitude
  * @param $distance
  * @param array $keyToInclude
  *
  * @return Collection|ParseObject[]
  */
 public function within($column, $latitude, $longitude, $distance, $keyToInclude = [])
 {
     $location = new ParseGeoPoint($latitude, $longitude);
     for ($i = 0; $i < count($keyToInclude); $i++) {
         $this->query->includeKey($keyToInclude[$i]);
     }
     switch (config('parse.units', 'kilometers')) {
         case 'kilometers':
             $this->query->withinKilometers($column, $location, $distance);
             break;
         case 'miles':
             $this->query->withinMiles($column, $location, $distance);
             break;
         case 'radians':
             $this->query->withinRadians($column, $location, $distance);
             break;
     }
     return Collection::make($this->query->find($this->useMasterKey));
 }
开发者ID:khangaikh,项目名称:golocal,代码行数:28,代码来源:AbstractParseRepository.php

示例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));
 }
开发者ID:louk,项目名称:One-Nice-Thing,代码行数:73,代码来源:ParseGeoPointTest.php

示例3: getOpenBikesWithinDistance

 function getOpenBikesWithinDistance($latitude, $longitude, $radius)
 {
     $point = new ParseGeoPoint($latitude, $longitude);
     $query = new ParseQuery("Bikes");
     $query->includeKey("currentUser");
     $query->doesNotExist("currentUser");
     $query->withinMiles("lastLocation", $point, $radius);
     $query->limit(1000);
     $results = $query->find();
     $count = count($results);
     $listOfBikes = array();
     for ($i = 0; $i < $count; $i++) {
         $bike = $results[$i];
         $ID = $bike->getObjectId();
         $point = $bike->get("lastLocation");
         $lat = $point->getLatitude();
         $long = $point->getLongitude();
         $object = new stdClass();
         $object->bikeID = $ID;
         $object->latitude = $lat;
         $object->longitude = $long;
         array_push($listOfBikes, $object);
     }
     return $listOfBikes;
 }
开发者ID:es2fq,项目名称:BaasAPI,代码行数:25,代码来源:BaasAPI.php


注:本文中的Parse\ParseQuery::withinMiles方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。