The OC Food Review blog has posted part one of a two part series covering the creation of a location-based search engine. They're currently implementing it into their site and wanted to share the knowledge.
Conceptually, location based searching is pretty straight-forward: find out where you are, find out how far you're willing to travel, and compare your location against the locations of all your choices. If the distance between where you are and what you're interested in is less than what you're willing to travel, add it to your results list. Simple, right? Right.
He talks more about the concepts behind the search and one of the keys to the entire process - geocoding. They opted to go with the Yahoo! Maps API to grab this information. There's some sample REST urls and the output of the results after they've been unserialized.
They've even created their own class to make things even simpler. It does require that you have cURL installed with your PHP5 installation, but outside of that, there are no other dependencies.