рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рдХрд╛рдо рдерд╛ - рд╡рд┐рднрд┐рдиреНрди рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдЗрдЯ рдкрд░ рдПрдХ рдирдХреНрд╢рд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдФрд░ рдЗрди рд╡рд╕реНрддреБрдУрдВ рдореЗрдВ рд╕реЗ рджрд╕рд┐рдпреЛрдВ рдпрд╛ рд╕реИрдХрдбрд╝реЛрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдордзреНрдп рд╕реНрддрд░ рд╕реЗ рдиреАрдЪреЗ рдХрд╛ рдХреЛрдИ рднреА рдкреНрд░рдмрдВрдзрдХ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдФрдкрдЪрд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдФрд░ рдЬрд▓реНрджреА рд╕реЗ рдЗрди рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдФрд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдорд╛рдирдЪрд┐рддреНрд░ рдкрд░ рдЗрди рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рднреВ-рд╡рд╕реНрддреБрдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рдХреЛ рдХрдо рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рд╡рд┐рдЪрд╛рд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Google рдбреЙрдХреНрд╕ рдФрд░ 2 рдЬреАрдЖрдИрдПрд╕ рдорд╛рдирдЪрд┐рддреНрд░ рд╕реЗрд╡рд╛ рдПрдкреАрдЖрдИ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛ред рд╕рдорд╛рдзрд╛рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд░рд▓ рдерд╛, рдкреНрд░рд╕рд┐рджреНрдз "30 рд▓рд╛рдЗрдиреЛрдВ" рдХреА рднрд╛рд╡рдирд╛ рдореЗрдВ :)
рдЪрд░рдг 1. рд╣рдо рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рддреЗ рд╣реИрдВред
Google рдбреЙрдХреНрд╕ рдЦреЛрд▓реЗрдВ рдФрд░ рдПрдХ рдЯреЗрдмрд▓ рдмрдирд╛рдПрдВред рдореЗрд░реА рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреНрд╖реЗрддреНрд░ рдереЗ рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдЕрдирд╛рд╡рд╢реНрдпрдХ рдереЗ, рд▓реЗрдХрд┐рди рдЕрдиреНрдп рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд╡рд╢реНрдпрдХ рдереЗ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдереЛрдбрд╝реА рд╕реА рдЪрд╛рд▓ рдХреЗ рд▓рд┐рдП рдЬрд╛рдКрдВрдЧрд╛ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд▓рдЧ рд╢реБрд░реБрдЖрдд рдХрд░реВрдВрдЧрд╛ред
рдпрд╣рд╛рдВ рдЗрд╕рдХреА рдПрдХ рд▓рд┐рдВрдХ рджреА рдЧрдИ рд╣реИ:
docs.google.com/spreadsheet/ccc?key=0AvdXWIJtCGnndG0tODY5MzRsVFhnbkJseFk0aWJnUE&usp=sharingрдкрд░реАрдХреНрд╖рдг рдХреЗ рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВрдиреЗ рдХреЛрд╕реНрддреНрд░реЛрдорд╛ рд╢рд╣рд░ рдХреЗ рджреЛ рдЫреЛрдЯреЗ рдорддрджрд╛рди рдХреЗрдВрджреНрд░реЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдШрд░реЛрдВ рдХреЗ рдкрддреЗ рд▓рд┐рдПред рднреВрдорд┐ рдХреА рд╕рдВрдЦреНрдпрд╛, рд╕рдбрд╝рдХ, рдШрд░ рдХреА рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдЕрдкрд╛рд░реНрдЯрдореЗрдВрдЯ рдХреА рд╕рдВрдЦреНрдпрд╛ред
Google рдбреНрд░рд╛рдЗрд╡ рдХреЛ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдбрд┐рдЧреНрд░реА рдХреЗ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮреЛрдВ рдХреЗ рд╕рд╣рдпреЛрдЧ рдФрд░ рдбреЗрдЯрд╛ рдХреЗ рддреЗрдЬреА рд╕реЗ рдЕрдкрдбреЗрдЯ рдХреЗ рд╕рд╛рде рдХрдИ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рджреВрд░ рдХрд░рддрд╛ рд╣реИред
рдЕрдм рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореЗрдиреВ рдкрд░ рдЬрд╛рдПрдВ "рдлрд╝рд╛рдЗрд▓ - рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░реЗрдВред" рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реА рд╡рд┐рдВрдбреЛ рдореЗрдВ, "рдкреНрд░рд╛рд░рдВрдн рдкреНрд░рдХрд╛рд╢рди" рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ, рдирд┐рдЪрд▓реЗ рд╣рд┐рд╕реНрд╕реЗ рдореЗрдВ - "рд╕реАрдПрд╕рд╡реА (рдЕрд▓реНрдкрд╡рд┐рд░рд╛рдо рд╕реЗ рдЕрд▓рдЧ рдХрд┐рдП рдЧрдП рдорд╛рди)" рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ рд╕реАрдПрд╕рд╡реА рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдорд╛рд░реА рдЯреЗрдмрд▓ рд╢реАрдЯ рдХрд╛ рд▓рд┐рдВрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред
рдпрд╣ рдЗрд╕ рд▓рд┐рдВрдХ рдХрд╛ рдкрддрд╛
рд▓рдЧрд╛рддрд╛ рд╣реИ :
рдбреЙрдХреНрд╕редрдЪрд░рдг 2. рд╣рдо рдХрд╛рд░реНрдб рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рддреИрдпрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред
рдЖрдЗрдП PHP рдореЗрдВ рдПрдХ рд╕рд░рд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦреЗрдВ рдФрд░ рдЗрд╕реЗ getMapData.php рдХрд╣реЗрдВ:
define('CSV_DATA_URL', 'https://docs.google.com/spreadsheet/pub?key=0AvdXWIJtCGnndG0tODY5MzRsVFhnbkJseFk0aWJkaUE&single=true&gid=0&output=csv'); define('DEFAULT_CITY', ''); $points = array(); $csvDataHandle = fopen(CSV_DATA_URL, 'r'); $i = 0; while ( false !== ($line = fgetcsv($csvDataHandle, null, ',', '"')) ) {
рдпрд╣рд╛рдВ рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкрд╣рд▓реА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ "рдЪреЗрддрд╛рд╡рдиреА: fopen (): рдЖрд╡рд░рдг" https "" рдЦреЛрдЬрдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реИред рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдУрдкрдирдПрд╕рдПрд╕рдПрд▓ рдореЙрдбреНрдпреВрд▓ рдкреАрдПрдЪрдкреА рдХреА рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реНрдерд╛рдкрдирд╛ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИред Php.ini рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд▓рд╛рдЗрди рдЦреЛрдЬреЗрдВ
;extension=php_openssl.so
рдФрд░ рдЕрд░реНрдзрд╡рд┐рд░рд╛рдо рд╣рдЯрд╛рдХрд░ рдЗрд╕реЗ
;extension=php_openssl.so
ред рд╕рд╛рдорд╛рдиреНрдп рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рдмреЗрд╢рдХ, $ рдкреЙрдЗрдВрдЯреНрд╕ рдРрд░реЗ рдХреЛ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдХреИрд╢ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рд╣рд░ рдмрд╛рд░ рдореИрдк рдХреЛ рд░реЗрдВрдбрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Google рдбреЙрдХреНрд╕ рдХреЛ "рдкреБрд▓" рди рдХрд░реЗрдВред
рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдп рд╣реИрдВред рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рднреВ-рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдкрддреЗ рдХреЛ рдорд╛рдирдЪрд┐рддреНрд░ рдкрд░ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд┐рдпрд╛ рдЬрд╛рдПред рдЗрд╕рдХреЗ рд▓рд┐рдП, 2GIS рдХреЗ рдкрд╛рд╕ рдПрдХ рд╕рдВрдЧрдд API рд╣реИ:
api.2gis.ru/doc/geo/searchрдпрд╣рд╛рдБ рдЬрд┐рдпреЛрдХреЛрдбрд░ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕рд░рд▓ рдХреЛрдб рд╣реИ:
define('DGIS_API_KEY', 'XXXXXX');
рдФрд░ рдЕрдВрдд рдореЗрдВ, рд╣рдорд╛рд░реЗ "рдЬрд┐рдпреЛрдХреЛрдбрд░" рдХреЗ рд╕рд╛рде $ рдкреЙрдЗрдВрдЯ рд╕рд░рдгреА рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдкрд░рд┐рдгрд╛рдо рдХреЛ JSON рдлреЙрд░реНрдореЗрдЯ рдореЗрдВ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ:
foreach ( $points as &$address ) { $address['coords'] = getGeoObjectInfo($address['address']); sleep(1); } echo json_encode($points);
рдЕрдЬреАрдм рд▓рд╛рдЗрди рдиреАрдВрдж рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ (1); рдХреЛрдб рдореЗрдВред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ 2 рдЬреАрдЖрдИрдПрд╕ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдЕрдиреБрд░реЛрдз рдЖрд╡реГрддреНрддрд┐ рдПрдХ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рддрдХ рд╕реАрдорд┐рдд рд╣реИред рдкреВрд░реНрдг рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЗрд╕ рд▓рд╛рдЗрди рдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЦреИрд░, рдкреНрд░рд╛рдкреНрдд рдЖрдВрдХрдбрд╝реЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдХреИрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордд рднреВрд▓рдирд╛, рддрд╛рдХрд┐ 2 рдЬреАрдЖрдИрдПрд╕ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рднрд╛рд░ рди рдмрдирд╛рдПрдВ, рдФрд░ рдЦреБрдж рдХреЗ рд▓рд┐рдП - рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдордпред
рдЪрд░рдг 3. рд╣рдо рдирдХреНрд╢рд╛ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВред
рдпрд╣рд╛рдВ рдореИрдВ рдкреЗрдЬ рдХрд╛ рдкреВрд░рд╛ рдХреЛрдб рджреВрдВрдЧрд╛ред рдЗрд╕рдореЗрдВ рдХреБрдЫ рднреА рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╕реЗ 2GIS рдХреЗ рдкрд╛рд╕ рдЕрдЪреНрдЫреЗ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реИрдВ, рдЖрдк рдЗрд╕реЗ
api.2gis.ru/doc/maps/info рдкрд░ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ
<!DOCTYPE html> <html> <head> <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> <script type="text/javascript" src="http://maps.api.2gis.ru/1.0?loadByRequire=1"></script> <title> </title> </head> <body> <div id="DGMap" style="width:100%; height:600px"></div> <script type="text/javascript"> $(DG.load(function() { </script> </body> </html>
рд╡рд╣, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд╕рдм рд╣реИред рд╣рдореЗрдВ Google рдбреЙрдХреНрд╕ рджреНрд╡рд╛рд░рд╛ рд░рдЦреА рдЧрдИ рд╕реВрдЪреА рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдирдХреНрд╢реЗ рдкрд░ рд╡рд╕реНрддреБрдУрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рд╕рд░рд▓, рд▓реЗрдХрд┐рди рдХрд╛рдлреА рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд╕рд┐рд╕реНрдЯрдо рдорд┐рд▓рд╛ рд╣реИред рдпрд╣рд╛рдБ рдПрдХ рдореИрд╢-рдЕрдк рд╣реИ :)
рдкреБрдирд╢реНрдЪ
рдореИрдВ рдкрд░рд┐рдгрд╛рдореА рдХрд╛рд░реНрдб рдХрд╛ рд▓рд┐рдВрдХ рдирд╣реАрдВ рджреЗрддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдПрдХ рдРрд╕реЗ рд╕рд░реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдбрд░рддрд╛ рд╣реВрдВ рдЬреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдкреНрд░рднрд╛рд╡ рдХреЗ рддрд╣рдд рдЭреВрда рдмреЛрд▓ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╡рд╣ рдЪрд┐рддреНрд░ рдЬреЛ рдореИрдВ рдирд╣реАрдВ рдбрд╛рд▓ рд╕рдХрддрд╛:
рдкреА рдкреА рдПрд╕
рдЕрд╕рд▓ рдореЗрдВ, рдХреБрдЫ рднреА рдХрд╛рд░реНрдб рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА "рдЪрд╛рд▓" рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпреИрдВрдбреЗрдХреНрд╕ рд╕реЗред рдорд╛рдирдЪрд┐рддреНрд░ рдкрд░ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ рдорд╛рд░реНрдХрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдХрдИ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╢реИрд▓рд┐рдпреЛрдВ рдФрд░ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХреЗ рдХрд╛рд░рдг рдпрд╣ рдФрд░ рднреА рд╕реБрдВрджрд░ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдореИрдВ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдкрд░реАрдХреНрд╖рдгреЛрдВ рд╕реЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ 2 рдЬреАрдЖрдИрдПрд╕ рдЬрд┐рдпреЛрдХреЛрдбрд░ рдЕрднреА рднреА рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд╣реИред рдпреИрдВрдбреЗрдХреНрд╕ рд▓рдЧрднрдЧ 95% рдкрддреЗ рд╕реЗ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдореБрдХрд╛рдмрд▓рд╛ рдХрд░рддрд╛ рд╣реИ, рдмрд╢рд░реНрддреЗ рдХрд┐ рд╡реЗ рд╕рд╛рд╡рдзрд╛рдиреА рд╕реЗ рддреИрдпрд╛рд░ рд╣реЛрдВ, 2GIS - рд▓рдЧрднрдЧ рд╕рднреА 100%ред