For this to work, attrlat and attrlng need to be in lower case otherwise you will get :
"unknown latitude attribute ''"
SphinxClient::setGeoAnchor
(PECL sphinx >= 0.1.0)
SphinxClient::setGeoAnchor — Set anchor point for a geosphere distance calculations
Descrição
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.
Parâmetros
- attrlat
-
Name of a latitude attribute.
- attrlong
-
Name of a longitude attribute.
- latitude
-
Anchor latitude in radians.
- longitude
-
Anchor longitude in radians.
Valor Retornado
Retorna TRUE em caso de sucesso ou FALSE em falhas.
michel dot bartz at igotchamedia dot com
20-Jul-2011 01:17
k dot andris at gmail dot com
06-Oct-2010 06:55
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');
