Constants

LOCATION_TYPE_GEOHASH

LOCATION_TYPE_GEOHASH

LOCATION_TYPE_LATLON

LOCATION_TYPE_LATLON

DISTANCE_TYPE_ARC

DISTANCE_TYPE_ARC

DISTANCE_TYPE_PLANE

DISTANCE_TYPE_PLANE

Properties

$_locationType

$_locationType : string

Location type.

Decides if this query uses latitude/longitude or geohash for the location. Values are "latlon" or "geohash".

Type

string

$_key

$_key : string

Key.

Type

string

$_latitude

$_latitude : float

Latitude.

Type

float

$_longitude

$_longitude : float

Longitude.

Type

float

$_geohash

$_geohash : string

Geohash.

Type

string

$_params

$_params : array

Params.

Type

array

$_rawParams

$_rawParams : array

Raw Params.

Type

array

Methods

setKey()

setKey(string  $key) : $this

Parameters

string $key

Returns

$this

setLocation()

setLocation(array|string  $location) : $this

Parameters

array|string $location

Throws

\Elastica\Exception\InvalidException

Returns

$this

setLatitude()

setLatitude(float  $latitude) : $this

Parameters

float $latitude

Returns

$this

setLongitude()

setLongitude(float  $longitude) : $this

Parameters

float $longitude

Returns

$this

setGeohash()

setGeohash(string  $geohash) : $this

Parameters

string $geohash

Returns

$this

toArray()

toArray() : array

Converts the params to an array. A default implementation exist to create the an array out of the class name (last part of the class name) and the params.

Returns

array —

Filter array

setParam()

setParam(string  $key, mixed  $value) : $this

Sets (overwrites) the value at the given key.

Parameters

string $key

Key to set

mixed $value

Key Value

Returns

$this

setParams()

setParams(array  $params) : $this

Sets (overwrites) all params of this object.

Parameters

array $params

Parameter list

Returns

$this

addParam()

addParam(string  $key, mixed  $value) : $this

Adds a param to the list.

This function can be used to add an array of params

Parameters

string $key

Param key

mixed $value

Value to set

Returns

$this

getParam()

getParam(string  $key) : mixed

Returns a specific param.

Parameters

string $key

Key to return

Throws

\Elastica\Exception\InvalidException

If requested key is not set

Returns

mixed —

Key value

hasParam()

hasParam(string  $key) : boolean

Test if a param is set.

Parameters

string $key

Key to test

Returns

boolean —

True if the param is set, false otherwise

getParams()

getParams() : array

Returns the params array.

Returns

array —

Params

count()

count() : integer

{@inheritdoc}

Returns

integer

__construct()

__construct(string  $key, array|string  $location, string  $distance) 

Create GeoDistance object.

Parameters

string $key

Key

array|string $location

Location as array or geohash: array('lat' => 48.86, 'lon' => 2.35) OR 'drm3btev3e86'

string $distance

Distance

Throws

\Elastica\Exception\InvalidException

setDistance()

setDistance(string  $distance) : $this

Parameters

string $distance

Returns

$this

setDistanceType()

setDistanceType(\Elastica\Query\string  $distanceType = self::DISTANCE_TYPE_ARC) : $this

See DISTANCE_TYPE_* constants.

Parameters

\Elastica\Query\string $distanceType

Returns

$this

_getLocationData()

_getLocationData() : array|string

Throws

\Elastica\Exception\InvalidException

Returns

array|string

_convertArrayable()

_convertArrayable(array  $array) : array

Cast objects to arrays.

Parameters

array $array

Returns

array

_getBaseName()

_getBaseName() : string

Param's name Picks the last part of the class name and makes it snake_case You can override this method if you want to change the name.

Returns

string —

name

_setRawParam()

_setRawParam(string  $key, mixed  $value) : $this

Sets params not inside params array.

Parameters

string $key
mixed $value

Returns

$this