As google recently announced new geo-location features (which seems to us really amazing and provides great opportunities for cool mashups in tied with another great simplegeo.com service): http://www.google.com/intl/en_us/latitude/intro.html
we’ve decided to make an overview and figure out what information is available about using symfony with geo services. Some time ago we’ve already written about usage of phoogle (php lib for google map) with symfony but it’s not supported since ’08.
There is available bunch of snippets and plugins which provides access to Yahoo and Google Maps services:
“IP number to country” – propel snippet to retrieve the country of the visitor based on IP:
http://www.symfony-project.org/plugins/sfEasyGMapPlugin – provides helpers and abstraction to Google Maps API (this one seems to be most popular)
http://www.symfony-project.org/plugins/sfDoctrineIpGeolocPlugin – provides lookup country codes from IP addresses
http://www.symfony-project.org/plugins/sfIpGeolocHelperPlugin – allows to get the localization of visitors by IP
http://trac.symfony-project.org/wiki/sfIp2Country – return country name and the country ISO code from the visitor IP address (only Propel supported).
There is a bit outdated tutorial for using Yahoo GeoRSS with symfony which provides though good idea about using Yahoo GeoRSS.
The other interesting approach for building geo applications is augmented reality and specifically augmented reality browser Layar. There is a bunch of PHP tutorials for adding geo objects to Layar’s layer. We are planning to publish soon symfony plugin which would cover server part of this process (in fact service which returns so-called POI – “points of interests” to mobile device).
And we are keep looking for the other ways to access geo data within symfony. So will keep this post updated permanently 🙂