PHP 7.0.6 Released

SphinxClient::setGeoAnchor

(PECL sphinx >= 0.1.0)

SphinxClient::setGeoAnchorSet anchor point for a geosphere distance calculations

Description

public bool SphinxClient::setGeoAnchor ( string $attrlat , string $attrlong , float $latitude , float $longitude )

Sets anchor point for a geosphere distance (geodistance) calculations and enables them.

Once an anchor point is set, you can use magic "@geodist" attribute name in your filters and/or sorting expressions.

Parameters

attrlat

Name of a latitude attribute.

attrlong

Name of a longitude attribute.

latitude

Anchor latitude in radians.

longitude

Anchor longitude in radians.

Return Values

Returns TRUE on success or FALSE on failure.

User Contributed Notes

michel dot bartz at igotchamedia dot com
4 years ago
For this to work, attrlat and attrlng need to be in lower case otherwise you will get :
"unknown latitude attribute ''"
k dot andris at gmail dot com
5 years ago
When sorting on @geodist you have to use SetSortMode with SPH_SORT_EXTENDED, like below, if SPH_SORT_ATTR_ASC does not seem to work.

$sphinx->SetSortMode(SPH_SORT_EXTENDED, '@geodist ASC');
To Top