Doctrine2 multi-platform support for spatial types and functions
Doctrine2 multi-platform support for spatial types and functions. Currently MySQL and PostgreSQL with PostGIS are supported. Could potentially add support for other platforms if an interest is expressed.
This package is a refactor/continuation of my doctrine2-mysql-spatial package.
The following SQL/OpenGIS types have been implemented as PHP objects and accompanying Doctrine types:
Similar to Geometry but SRID value is always used (SRID supported in PostGIS only), and accepts only valid "geographic" coordinates.
- 3D/4D geometries ??
- Rasters ??????
There is support for both WKB/WKT and EWKB/EWKT return values. Currently only WKT/EWKT is used in statements.
Currently the following SQL functions are supported in DQL (more coming):
If you're using Doctrine with Symfony2 take a look at INSTALL.md, otherwise the OrmTest.php test class shows their use with Doctrine alone.
A DQL AST walker is included which when used with the following DQL functions will return the appropriate Geometry type object from queries instead of strings:
EWKT/EWKB function support planned.
$query = $this->em->createQuery('SELECT AsText(StartPoint(l.lineString)) MyLineStringEntity l'); $query->setHint(Query::HINT_CUSTOM_OUTPUT_WALKER, 'CrEOF\Spatial\ORM\Query\GeometryWalker'); $result = $query->getResult();
$result[n] will now be of type
Point instead of the string