You are browsing a version that has not yet been released. |
Geospatial Queries
You can execute some special queries when using geospatial indexes like checking for documents within a rectangle or circle.
Mapping
First, setup some documents like the following:
- PHP
1 <?php #[Document] #[Index(keys: ['coordinates' => '2d'])] class City { #[Id] public string $id; #[Field(type: 'string')] public string $name; #[EmbedOne(targetDocument: Coordinates::class)] public ?Coordinates $coordinates; } #[EmbeddedDocument] class Coordinates { #[Field(type: 'float')] public float $x; #[Field(type: 'float')] public float $y; } 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 - XML
Near Query
Now you can execute queries against these documents like the
following. Check for the 10 nearest cities to a given longitude
and latitude with the near($longitude, $latitude)
method: