Sokil\Mongo\Expression::nearPointSpherical PHP Метод

nearPointSpherical() публичный Метод

Find document near points in spherical surface
public nearPointSpherical ( string $field, float $longitude, float $latitude, integer | array $distance ) : Expression
$field string
$longitude float
$latitude float
$distance integer | array distance from point in meters. Array distance allowed only in MongoDB 2.6
Результат Expression
    public function nearPointSpherical($field, $longitude, $latitude, $distance)
    {
        $point = new Point(array((double) $longitude, (double) $latitude));
        $near = array('$geometry' => $point->jsonSerialize());
        if (is_array($distance)) {
            if (!empty($distance[0])) {
                $near['$minDistance'] = (int) $distance[0];
            }
            if (!empty($distance[1])) {
                $near['$maxDistance'] = (int) $distance[1];
            }
        } else {
            $near['$maxDistance'] = (int) $distance;
        }
        $this->where($field, array('$nearSphere' => $near));
        return $this;
    }