/** * example1_savetolocalfile.php * 22-Nov-2009 * * PHP Version 5 * * @category Services * @package Services_OpenStreetMap * @author Ken Guest <*****@*****.**> * @license BSD http://www.opensource.org/licenses/bsd-license.php * @version Release: @package_version@ * @link osmx.php */ $version = '@package_version@'; if (strstr($version, 'package_version')) { set_include_path(dirname(dirname(__FILE__)) . ':' . get_include_path()); } require_once 'Services/OpenStreetMap.php'; $osm = new Services_OpenStreetMap(array('verbose' => true)); var_dump($osm->getConfig()); try { $osm->getConfig()->setServer('http://api.openstreetmap.org/'); } catch (Exception $ex) { var_dump($ex->getMessage()); // Fall back to default server...so carry on. } $osm->get(52.84824191354071, -8.247245026639696, 52.89957825532213, -8.174161478654796); // $osm->get(52.9208049, -8.1156559, 52.9695733, -8.0005314); file_put_contents("osm.osm", $osm->getXml()); // vim:set et ts=4 sw=4:
<?php /** * example1_cahir.php * 22-Nov-2009 * * PHP Version 5 * * @category Services * @package Services_OpenStreetMap * @author Ken Guest <*****@*****.**> * @license BSD http://www.opensource.org/licenses/bsd-license.php * @version Release: @package_version@ * @link osmx.php */ $version = '@package_version@'; if (strstr($version, 'package_version')) { set_include_path(dirname(dirname(__FILE__)) . ':' . get_include_path()); } require_once 'Services/OpenStreetMap.php'; $osm = new Services_OpenStreetMap(); $osm->getConfig()->setServer('http://api.openstreetmap.org/'); try { $osm->get(52.821022799999994, -8.3564758, 53.0428644, -7.7330017); file_put_contents("homelands.osm", $osm->getXml()); } catch (Exception $e) { echo $e->getMessage(), "\n"; } // vim:set et ts=4 sw=4:
/** * Test searching for a value where it is part of a semicolon delimited * string. * * @return void */ public function testSearchDelimited() { $mock = new HTTP_Request2_Adapter_Mock(); $mock->addResponse(fopen(__DIR__ . '/responses/capabilities.xml', 'rb')); $mock->addResponse(fopen(__DIR__ . '/responses/area.xml', 'rb')); $config = array('adapter' => $mock, 'server' => 'http://api06.dev.openstreetmap.org/'); $osm = new Services_OpenStreetMap($config); $results = $osm->search(array('amenity' => 'pharmacy')); $this->AssertTrue(empty($results)); $osm->get(52.84824191354071, -8.247245026639696, 52.89957825532213, -8.174161478654796); $results = $osm->search(array('amenity' => 'restaurant')); $tags = array(); foreach ($results as $result) { $tags[] = $result->getTags(); } $this->assertEquals($tags, array(0 => array('addr:city' => 'Nenagh', 'addr:country' => 'IE', 'addr:housenumber' => '19', 'addr:street' => 'Pearse Street', 'amenity' => 'restaurant', 'building' => 'yes', 'building:levels' => '3'), 1 => array('addr:city' => 'Nenagh', 'addr:country' => 'IE', 'addr:housenumber' => '26', 'addr:street' => 'Kenyon Street', 'amenity' => 'restaurant', 'name' => 'The Peppermill'), 2 => array('amenity' => 'restaurant', 'cuisine' => 'italian', 'name' => 'Pepe\'s Restaurant'), 3 => array('addr:city' => 'Nenagh', 'addr:country' => 'IE', 'addr:housenumber' => '19', 'addr:street' => 'Kenyon Street', 'amenity' => 'restaurant', 'name' => 'Simply Food'), 4 => array('amenity' => 'restaurant', 'cuisine' => 'chinese', 'name' => 'Jin\'s'), 5 => array('addr:city' => 'Nenagh', 'addr:country' => 'IE', 'addr:housenumber' => '23', 'addr:street' => 'Sarsfield Street', 'amenity' => 'pub;restaurant', 'name' => 'Andy\'s', 'phone' => '+353 67 32494', 'tourism' => 'guest_house', 'website' => 'http://www.andysnenagh.com'), 6 => array('amenity' => 'restaurant', 'cuisine' => 'chinese', 'name' => 'Golden Star', 'opening_hours' => 'Mo-Su 17:00-24:00'), 7 => array('amenity' => 'restaurant', 'cuisine' => 'indian', 'email' => '*****@*****.**', 'name' => 'Turban', 'opening_hours' => 'Mo-Su 16:30-23:00; Fr,Sa 16:30-23:30', 'phone' => '+353 67 42794'))); }
set_include_path(dirname(dirname(__FILE__)) . ':' . get_include_path()); } require_once 'Services/OpenStreetMap.php'; require_once 'HTTP/Request2.php'; require_once 'HTTP/Request2/Adapter/Mock.php'; $osm = new Services_OpenStreetMap(); $mock = new HTTP_Request2_Adapter_Mock(); $mock->addResponse(fopen(__DIR__ . '/../tests/responses/capabilities.xml', 'rb')); $mock->addResponse(fopen(__DIR__ . '/../tests/responses/changeset.xml', 'rb')); $mock->addResponse(fopen(__DIR__ . '/../tests/responses/changeset.xml', 'rb')); $mock->addResponse(fopen(__DIR__ . '/../tests/responses/diff_create_node.xml', 'rb')); $mock->addResponse(fopen(__DIR__ . '/../tests/responses/changeset_closed', 'rb')); $config = array('adapter' => $mock, 'server' => 'http://api.openstreetmap.org/', 'passwordfile' => __DIR__ . '/credentials'); $osm = new Services_OpenStreetMap($config); $mm = $osm->bboxToMinMax(-8.6519835, 52.638735499999996, -8.6214513, 52.649915099999994); $osm->get($mm[0], $mm[1], $mm[2], $mm[3]); $results = $osm->search(array("building" => "yes")); $changeset = $osm->createChangeset(); $changeset->begin('Additional details for ballinacurra gardens.'); foreach ($results as $result) { $addrStreet = $result->getTag('addr:street'); if ($addrStreet != 'Oakview Drive') { continue; } $user = $result->getUser(); $name = $result->getTag('name'); if ('exampleusername' == $user) { $tags = $result->getTags(); if (isset($tags['building_roof'])) { continue; }