Skip to content
This repository was archived by the owner on Sep 18, 2019. It is now read-only.

Repository files navigation

DEPRECATED

This library has been replaced by https://github.com/Geocodio/geocodio-library-php

geocod.io PHP

Build Status

Thin PHP wrapper for geocod.io geocoding API that includes a service provider for Laravel.

Features

  • Geocode an individual address
  • Batch geocode up to 10,000 addresses at a time
  • Parse an address into its identifiable components

Read the complete geocod.io geocoding API for service documentation.

Installing via Composer

The recommended way to install geocod.io PHP is through Composer.

# Install Composer
curl -sS https://getcomposer.org/installer | php
# Add Geocodio as a dependency
php composer.phar require stanley/geocodio-php:~1.0

After installing, you need to require Composer's autoloader:

require('vendor/autoload.php');

Using

Using the geocod.io PHP library is super simple.

require('vendor/autoload.php');
useStanley\Geocodio\Client;
// Create the new Client object by passing in your api key$client = newClient('YOUR_API_KEY');

Note: Create an API key by signing up at https://dash.geocod.io/auth/register

Geocode single address

To encode a single address, simply pass a string to the geocode function.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data);

Geocode multiple addresses

For multiple addresses, you can pass an array of addresses to the same geocode function.

$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data);

Up to 10,000 addresses can be geocoded in a single batch request

Reverse geocoding a single coordinate

geocod.io also supports reverse geocoding. To convert a single lat/long pair into an address, call the 'reverse' method.

The lat/long pairs should be separateed by a comma.

$data = '35.9746000,-77.9658000';
$result = $client->reverse($data);

Reverse geocoding multiple coordinates

To do a batch conversion, pass your lat/long pairs in an array.

$data = [
'35.9746000,-77.9658000',
'32.8793700,-96.6303900',
'33.8337100,-117.8362320',
'35.4171240,-80.6784760'
];
$result = $client->reverse($data);

Fields

Geocoding and reverse geocoding requests accepts an optional second parameter for fields.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data, ['cd', 'stateleg']);
$data = "35.9746000,-77.9658000";
$result = $client->reverse($data, ['cd', 'stateleg']);
$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data, ['cd', 'stateleg']);

Return Values

The geocod.io PHP client will return an instance of the Stanley\Geocodio\Data class. The raw response body can be accessed from the response property. This property had the response data stored as an object.

$body = $address->response;

Laravel Service Provider and Facade

A service provder and facade are available if you are using Laravel. Once you've added the package to your composer.json file, run php composer.phar update. Add 'Stanley\Geocodio\ServiceProviders\LaravelServiceProvider'to the providers key. Then, edit the aliases key and add 'Geocodio' => 'Stanley\Geocodio\Geocodio' to the array.

You are now ready to use the Facade. If you are using Laravel, you will need to pass your API Key as the third parameter.

$fields = [];
$key = 'YOUR_API_KEY';
$data = Geocodio::get('123 Anywhere St, Chicago, IL', $fields, $key);
returnresponse()->json($data);

Exceptions

Periodically, the geocod.io service will return errors.

To handle these:

  • An HTTP 403 error raises a GeocodioAuthError
  • An HTTP 422 error raises a GeocodioDataError and the error message will be reported through the exception
  • An HTTP 5xx error raises a GeocodioServerError
  • An unmatched non-200 response will simply raise Exception

Credits

The original library was written by David Stanley. Much of this readme and the structure of this library was inspired by the Py-Geocodio Library by Ben Lopatin.

About

PHP wrapper for the Geocod.io Address encoding library.

Resources

Stars

31 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
GitHub - Geocodio/geocodio-php: PHP wrapper for the Geocod.io Address encoding library. · GitHub
Skip to content
This repository was archived by the owner on Sep 18, 2019. It is now read-only.

Repository files navigation

DEPRECATED

This library has been replaced by https://github.com/Geocodio/geocodio-library-php

geocod.io PHP

Build Status

Thin PHP wrapper for geocod.io geocoding API that includes a service provider for Laravel.

Features

  • Geocode an individual address
  • Batch geocode up to 10,000 addresses at a time
  • Parse an address into its identifiable components

Read the complete geocod.io geocoding API for service documentation.

Installing via Composer

The recommended way to install geocod.io PHP is through Composer.

# Install Composer
curl -sS https://getcomposer.org/installer | php
# Add Geocodio as a dependency
php composer.phar require stanley/geocodio-php:~1.0

After installing, you need to require Composer's autoloader:

require('vendor/autoload.php');

Using

Using the geocod.io PHP library is super simple.

require('vendor/autoload.php');
useStanley\Geocodio\Client;
// Create the new Client object by passing in your api key$client = newClient('YOUR_API_KEY');

Note: Create an API key by signing up at https://dash.geocod.io/auth/register

Geocode single address

To encode a single address, simply pass a string to the geocode function.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data);

Geocode multiple addresses

For multiple addresses, you can pass an array of addresses to the same geocode function.

$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data);

Up to 10,000 addresses can be geocoded in a single batch request

Reverse geocoding a single coordinate

geocod.io also supports reverse geocoding. To convert a single lat/long pair into an address, call the 'reverse' method.

The lat/long pairs should be separateed by a comma.

$data = '35.9746000,-77.9658000';
$result = $client->reverse($data);

Reverse geocoding multiple coordinates

To do a batch conversion, pass your lat/long pairs in an array.

$data = [
'35.9746000,-77.9658000',
'32.8793700,-96.6303900',
'33.8337100,-117.8362320',
'35.4171240,-80.6784760'
];
$result = $client->reverse($data);

Fields

Geocoding and reverse geocoding requests accepts an optional second parameter for fields.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data, ['cd', 'stateleg']);
$data = "35.9746000,-77.9658000";
$result = $client->reverse($data, ['cd', 'stateleg']);
$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data, ['cd', 'stateleg']);

Return Values

The geocod.io PHP client will return an instance of the Stanley\Geocodio\Data class. The raw response body can be accessed from the response property. This property had the response data stored as an object.

$body = $address->response;

Laravel Service Provider and Facade

A service provder and facade are available if you are using Laravel. Once you've added the package to your composer.json file, run php composer.phar update. Add 'Stanley\Geocodio\ServiceProviders\LaravelServiceProvider'to the providers key. Then, edit the aliases key and add 'Geocodio' => 'Stanley\Geocodio\Geocodio' to the array.

You are now ready to use the Facade. If you are using Laravel, you will need to pass your API Key as the third parameter.

$fields = [];
$key = 'YOUR_API_KEY';
$data = Geocodio::get('123 Anywhere St, Chicago, IL', $fields, $key);
returnresponse()->json($data);

Exceptions

Periodically, the geocod.io service will return errors.

To handle these:

  • An HTTP 403 error raises a GeocodioAuthError
  • An HTTP 422 error raises a GeocodioDataError and the error message will be reported through the exception
  • An HTTP 5xx error raises a GeocodioServerError
  • An unmatched non-200 response will simply raise Exception

Credits

The original library was written by David Stanley. Much of this readme and the structure of this library was inspired by the Py-Geocodio Library by Ben Lopatin.

About

PHP wrapper for the Geocod.io Address encoding library.

Resources

Stars

31 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - Geocodio/geocodio-php: PHP wrapper for the Geocod.io Address encoding library. · GitHub
Skip to content
This repository was archived by the owner on Sep 18, 2019. It is now read-only.

Repository files navigation

DEPRECATED

This library has been replaced by https://github.com/Geocodio/geocodio-library-php

geocod.io PHP

Build Status

Thin PHP wrapper for geocod.io geocoding API that includes a service provider for Laravel.

Features

  • Geocode an individual address
  • Batch geocode up to 10,000 addresses at a time
  • Parse an address into its identifiable components

Read the complete geocod.io geocoding API for service documentation.

Installing via Composer

The recommended way to install geocod.io PHP is through Composer.

# Install Composer
curl -sS https://getcomposer.org/installer | php
# Add Geocodio as a dependency
php composer.phar require stanley/geocodio-php:~1.0

After installing, you need to require Composer's autoloader:

require('vendor/autoload.php');

Using

Using the geocod.io PHP library is super simple.

require('vendor/autoload.php');
useStanley\Geocodio\Client;
// Create the new Client object by passing in your api key$client = newClient('YOUR_API_KEY');

Note: Create an API key by signing up at https://dash.geocod.io/auth/register

Geocode single address

To encode a single address, simply pass a string to the geocode function.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data);

Geocode multiple addresses

For multiple addresses, you can pass an array of addresses to the same geocode function.

$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data);

Up to 10,000 addresses can be geocoded in a single batch request

Reverse geocoding a single coordinate

geocod.io also supports reverse geocoding. To convert a single lat/long pair into an address, call the 'reverse' method.

The lat/long pairs should be separateed by a comma.

$data = '35.9746000,-77.9658000';
$result = $client->reverse($data);

Reverse geocoding multiple coordinates

To do a batch conversion, pass your lat/long pairs in an array.

$data = [
'35.9746000,-77.9658000',
'32.8793700,-96.6303900',
'33.8337100,-117.8362320',
'35.4171240,-80.6784760'
];
$result = $client->reverse($data);

Fields

Geocoding and reverse geocoding requests accepts an optional second parameter for fields.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data, ['cd', 'stateleg']);
$data = "35.9746000,-77.9658000";
$result = $client->reverse($data, ['cd', 'stateleg']);
$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data, ['cd', 'stateleg']);

Return Values

The geocod.io PHP client will return an instance of the Stanley\Geocodio\Data class. The raw response body can be accessed from the response property. This property had the response data stored as an object.

$body = $address->response;

Laravel Service Provider and Facade

A service provder and facade are available if you are using Laravel. Once you've added the package to your composer.json file, run php composer.phar update. Add 'Stanley\Geocodio\ServiceProviders\LaravelServiceProvider'to the providers key. Then, edit the aliases key and add 'Geocodio' => 'Stanley\Geocodio\Geocodio' to the array.

You are now ready to use the Facade. If you are using Laravel, you will need to pass your API Key as the third parameter.

$fields = [];
$key = 'YOUR_API_KEY';
$data = Geocodio::get('123 Anywhere St, Chicago, IL', $fields, $key);
returnresponse()->json($data);

Exceptions

Periodically, the geocod.io service will return errors.

To handle these:

  • An HTTP 403 error raises a GeocodioAuthError
  • An HTTP 422 error raises a GeocodioDataError and the error message will be reported through the exception
  • An HTTP 5xx error raises a GeocodioServerError
  • An unmatched non-200 response will simply raise Exception

Credits

The original library was written by David Stanley. Much of this readme and the structure of this library was inspired by the Py-Geocodio Library by Ben Lopatin.

About

PHP wrapper for the Geocod.io Address encoding library.

Resources

Stars

31 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - Geocodio/geocodio-php: PHP wrapper for the Geocod.io Address encoding library. · GitHub
Skip to content
This repository was archived by the owner on Sep 18, 2019. It is now read-only.

Repository files navigation

DEPRECATED

This library has been replaced by https://github.com/Geocodio/geocodio-library-php

geocod.io PHP

Build Status

Thin PHP wrapper for geocod.io geocoding API that includes a service provider for Laravel.

Features

  • Geocode an individual address
  • Batch geocode up to 10,000 addresses at a time
  • Parse an address into its identifiable components

Read the complete geocod.io geocoding API for service documentation.

Installing via Composer

The recommended way to install geocod.io PHP is through Composer.

# Install Composer
curl -sS https://getcomposer.org/installer | php
# Add Geocodio as a dependency
php composer.phar require stanley/geocodio-php:~1.0

After installing, you need to require Composer's autoloader:

require('vendor/autoload.php');

Using

Using the geocod.io PHP library is super simple.

require('vendor/autoload.php');
useStanley\Geocodio\Client;
// Create the new Client object by passing in your api key$client = newClient('YOUR_API_KEY');

Note: Create an API key by signing up at https://dash.geocod.io/auth/register

Geocode single address

To encode a single address, simply pass a string to the geocode function.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data);

Geocode multiple addresses

For multiple addresses, you can pass an array of addresses to the same geocode function.

$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data);

Up to 10,000 addresses can be geocoded in a single batch request

Reverse geocoding a single coordinate

geocod.io also supports reverse geocoding. To convert a single lat/long pair into an address, call the 'reverse' method.

The lat/long pairs should be separateed by a comma.

$data = '35.9746000,-77.9658000';
$result = $client->reverse($data);

Reverse geocoding multiple coordinates

To do a batch conversion, pass your lat/long pairs in an array.

$data = [
'35.9746000,-77.9658000',
'32.8793700,-96.6303900',
'33.8337100,-117.8362320',
'35.4171240,-80.6784760'
];
$result = $client->reverse($data);

Fields

Geocoding and reverse geocoding requests accepts an optional second parameter for fields.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data, ['cd', 'stateleg']);
$data = "35.9746000,-77.9658000";
$result = $client->reverse($data, ['cd', 'stateleg']);
$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data, ['cd', 'stateleg']);

Return Values

The geocod.io PHP client will return an instance of the Stanley\Geocodio\Data class. The raw response body can be accessed from the response property. This property had the response data stored as an object.

$body = $address->response;

Laravel Service Provider and Facade

A service provder and facade are available if you are using Laravel. Once you've added the package to your composer.json file, run php composer.phar update. Add 'Stanley\Geocodio\ServiceProviders\LaravelServiceProvider'to the providers key. Then, edit the aliases key and add 'Geocodio' => 'Stanley\Geocodio\Geocodio' to the array.

You are now ready to use the Facade. If you are using Laravel, you will need to pass your API Key as the third parameter.

$fields = [];
$key = 'YOUR_API_KEY';
$data = Geocodio::get('123 Anywhere St, Chicago, IL', $fields, $key);
returnresponse()->json($data);

Exceptions

Periodically, the geocod.io service will return errors.

To handle these:

  • An HTTP 403 error raises a GeocodioAuthError
  • An HTTP 422 error raises a GeocodioDataError and the error message will be reported through the exception
  • An HTTP 5xx error raises a GeocodioServerError
  • An unmatched non-200 response will simply raise Exception

Credits

The original library was written by David Stanley. Much of this readme and the structure of this library was inspired by the Py-Geocodio Library by Ben Lopatin.

About

PHP wrapper for the Geocod.io Address encoding library.

Resources

Stars

31 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' GitHub - Geocodio/geocodio-php: PHP wrapper for the Geocod.io Address encoding library. · GitHub
Skip to content
This repository was archived by the owner on Sep 18, 2019. It is now read-only.

Repository files navigation

DEPRECATED

This library has been replaced by https://github.com/Geocodio/geocodio-library-php

geocod.io PHP

Build Status

Thin PHP wrapper for geocod.io geocoding API that includes a service provider for Laravel.

Features

  • Geocode an individual address
  • Batch geocode up to 10,000 addresses at a time
  • Parse an address into its identifiable components

Read the complete geocod.io geocoding API for service documentation.

Installing via Composer

The recommended way to install geocod.io PHP is through Composer.

# Install Composer
curl -sS https://getcomposer.org/installer | php
# Add Geocodio as a dependency
php composer.phar require stanley/geocodio-php:~1.0

After installing, you need to require Composer's autoloader:

require('vendor/autoload.php');

Using

Using the geocod.io PHP library is super simple.

require('vendor/autoload.php');
useStanley\Geocodio\Client;
// Create the new Client object by passing in your api key$client = newClient('YOUR_API_KEY');

Note: Create an API key by signing up at https://dash.geocod.io/auth/register

Geocode single address

To encode a single address, simply pass a string to the geocode function.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data);

Geocode multiple addresses

For multiple addresses, you can pass an array of addresses to the same geocode function.

$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data);

Up to 10,000 addresses can be geocoded in a single batch request

Reverse geocoding a single coordinate

geocod.io also supports reverse geocoding. To convert a single lat/long pair into an address, call the 'reverse' method.

The lat/long pairs should be separateed by a comma.

$data = '35.9746000,-77.9658000';
$result = $client->reverse($data);

Reverse geocoding multiple coordinates

To do a batch conversion, pass your lat/long pairs in an array.

$data = [
'35.9746000,-77.9658000',
'32.8793700,-96.6303900',
'33.8337100,-117.8362320',
'35.4171240,-80.6784760'
];
$result = $client->reverse($data);

Fields

Geocoding and reverse geocoding requests accepts an optional second parameter for fields.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data, ['cd', 'stateleg']);
$data = "35.9746000,-77.9658000";
$result = $client->reverse($data, ['cd', 'stateleg']);
$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data, ['cd', 'stateleg']);

Return Values

The geocod.io PHP client will return an instance of the Stanley\Geocodio\Data class. The raw response body can be accessed from the response property. This property had the response data stored as an object.

$body = $address->response;

Laravel Service Provider and Facade

A service provder and facade are available if you are using Laravel. Once you've added the package to your composer.json file, run php composer.phar update. Add 'Stanley\Geocodio\ServiceProviders\LaravelServiceProvider'to the providers key. Then, edit the aliases key and add 'Geocodio' => 'Stanley\Geocodio\Geocodio' to the array.

You are now ready to use the Facade. If you are using Laravel, you will need to pass your API Key as the third parameter.

$fields = [];
$key = 'YOUR_API_KEY';
$data = Geocodio::get('123 Anywhere St, Chicago, IL', $fields, $key);
returnresponse()->json($data);

Exceptions

Periodically, the geocod.io service will return errors.

To handle these:

  • An HTTP 403 error raises a GeocodioAuthError
  • An HTTP 422 error raises a GeocodioDataError and the error message will be reported through the exception
  • An HTTP 5xx error raises a GeocodioServerError
  • An unmatched non-200 response will simply raise Exception

Credits

The original library was written by David Stanley. Much of this readme and the structure of this library was inspired by the Py-Geocodio Library by Ben Lopatin.

About

PHP wrapper for the Geocod.io Address encoding library.

Resources

Stars

31 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - Geocodio/geocodio-php: PHP wrapper for the Geocod.io Address encoding library. · GitHub
Skip to content
This repository was archived by the owner on Sep 18, 2019. It is now read-only.

Repository files navigation

DEPRECATED

This library has been replaced by https://github.com/Geocodio/geocodio-library-php

geocod.io PHP

Build Status

Thin PHP wrapper for geocod.io geocoding API that includes a service provider for Laravel.

Features

  • Geocode an individual address
  • Batch geocode up to 10,000 addresses at a time
  • Parse an address into its identifiable components

Read the complete geocod.io geocoding API for service documentation.

Installing via Composer

The recommended way to install geocod.io PHP is through Composer.

# Install Composer
curl -sS https://getcomposer.org/installer | php
# Add Geocodio as a dependency
php composer.phar require stanley/geocodio-php:~1.0

After installing, you need to require Composer's autoloader:

require('vendor/autoload.php');

Using

Using the geocod.io PHP library is super simple.

require('vendor/autoload.php');
useStanley\Geocodio\Client;
// Create the new Client object by passing in your api key$client = newClient('YOUR_API_KEY');

Note: Create an API key by signing up at https://dash.geocod.io/auth/register

Geocode single address

To encode a single address, simply pass a string to the geocode function.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data);

Geocode multiple addresses

For multiple addresses, you can pass an array of addresses to the same geocode function.

$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data);

Up to 10,000 addresses can be geocoded in a single batch request

Reverse geocoding a single coordinate

geocod.io also supports reverse geocoding. To convert a single lat/long pair into an address, call the 'reverse' method.

The lat/long pairs should be separateed by a comma.

$data = '35.9746000,-77.9658000';
$result = $client->reverse($data);

Reverse geocoding multiple coordinates

To do a batch conversion, pass your lat/long pairs in an array.

$data = [
'35.9746000,-77.9658000',
'32.8793700,-96.6303900',
'33.8337100,-117.8362320',
'35.4171240,-80.6784760'
];
$result = $client->reverse($data);

Fields

Geocoding and reverse geocoding requests accepts an optional second parameter for fields.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data, ['cd', 'stateleg']);
$data = "35.9746000,-77.9658000";
$result = $client->reverse($data, ['cd', 'stateleg']);
$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data, ['cd', 'stateleg']);

Return Values

The geocod.io PHP client will return an instance of the Stanley\Geocodio\Data class. The raw response body can be accessed from the response property. This property had the response data stored as an object.

$body = $address->response;

Laravel Service Provider and Facade

A service provder and facade are available if you are using Laravel. Once you've added the package to your composer.json file, run php composer.phar update. Add 'Stanley\Geocodio\ServiceProviders\LaravelServiceProvider'to the providers key. Then, edit the aliases key and add 'Geocodio' => 'Stanley\Geocodio\Geocodio' to the array.

You are now ready to use the Facade. If you are using Laravel, you will need to pass your API Key as the third parameter.

$fields = [];
$key = 'YOUR_API_KEY';
$data = Geocodio::get('123 Anywhere St, Chicago, IL', $fields, $key);
returnresponse()->json($data);

Exceptions

Periodically, the geocod.io service will return errors.

To handle these:

  • An HTTP 403 error raises a GeocodioAuthError
  • An HTTP 422 error raises a GeocodioDataError and the error message will be reported through the exception
  • An HTTP 5xx error raises a GeocodioServerError
  • An unmatched non-200 response will simply raise Exception

Credits

The original library was written by David Stanley. Much of this readme and the structure of this library was inspired by the Py-Geocodio Library by Ben Lopatin.

About

PHP wrapper for the Geocod.io Address encoding library.

Resources

Stars

31 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - Geocodio/geocodio-php: PHP wrapper for the Geocod.io Address encoding library. · GitHub
Skip to content
This repository was archived by the owner on Sep 18, 2019. It is now read-only.

Repository files navigation

DEPRECATED

This library has been replaced by https://github.com/Geocodio/geocodio-library-php

geocod.io PHP

Build Status

Thin PHP wrapper for geocod.io geocoding API that includes a service provider for Laravel.

Features

  • Geocode an individual address
  • Batch geocode up to 10,000 addresses at a time
  • Parse an address into its identifiable components

Read the complete geocod.io geocoding API for service documentation.

Installing via Composer

The recommended way to install geocod.io PHP is through Composer.

# Install Composer
curl -sS https://getcomposer.org/installer | php
# Add Geocodio as a dependency
php composer.phar require stanley/geocodio-php:~1.0

After installing, you need to require Composer's autoloader:

require('vendor/autoload.php');

Using

Using the geocod.io PHP library is super simple.

require('vendor/autoload.php');
useStanley\Geocodio\Client;
// Create the new Client object by passing in your api key$client = newClient('YOUR_API_KEY');

Note: Create an API key by signing up at https://dash.geocod.io/auth/register

Geocode single address

To encode a single address, simply pass a string to the geocode function.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data);

Geocode multiple addresses

For multiple addresses, you can pass an array of addresses to the same geocode function.

$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data);

Up to 10,000 addresses can be geocoded in a single batch request

Reverse geocoding a single coordinate

geocod.io also supports reverse geocoding. To convert a single lat/long pair into an address, call the 'reverse' method.

The lat/long pairs should be separateed by a comma.

$data = '35.9746000,-77.9658000';
$result = $client->reverse($data);

Reverse geocoding multiple coordinates

To do a batch conversion, pass your lat/long pairs in an array.

$data = [
'35.9746000,-77.9658000',
'32.8793700,-96.6303900',
'33.8337100,-117.8362320',
'35.4171240,-80.6784760'
];
$result = $client->reverse($data);

Fields

Geocoding and reverse geocoding requests accepts an optional second parameter for fields.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data, ['cd', 'stateleg']);
$data = "35.9746000,-77.9658000";
$result = $client->reverse($data, ['cd', 'stateleg']);
$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data, ['cd', 'stateleg']);

Return Values

The geocod.io PHP client will return an instance of the Stanley\Geocodio\Data class. The raw response body can be accessed from the response property. This property had the response data stored as an object.

$body = $address->response;

Laravel Service Provider and Facade

A service provder and facade are available if you are using Laravel. Once you've added the package to your composer.json file, run php composer.phar update. Add 'Stanley\Geocodio\ServiceProviders\LaravelServiceProvider'to the providers key. Then, edit the aliases key and add 'Geocodio' => 'Stanley\Geocodio\Geocodio' to the array.

You are now ready to use the Facade. If you are using Laravel, you will need to pass your API Key as the third parameter.

$fields = [];
$key = 'YOUR_API_KEY';
$data = Geocodio::get('123 Anywhere St, Chicago, IL', $fields, $key);
returnresponse()->json($data);

Exceptions

Periodically, the geocod.io service will return errors.

To handle these:

  • An HTTP 403 error raises a GeocodioAuthError
  • An HTTP 422 error raises a GeocodioDataError and the error message will be reported through the exception
  • An HTTP 5xx error raises a GeocodioServerError
  • An unmatched non-200 response will simply raise Exception

Credits

The original library was written by David Stanley. Much of this readme and the structure of this library was inspired by the Py-Geocodio Library by Ben Lopatin.

About

PHP wrapper for the Geocod.io Address encoding library.

Resources

Stars

31 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); GitHub - Geocodio/geocodio-php: PHP wrapper for the Geocod.io Address encoding library. · GitHub
Skip to content
This repository was archived by the owner on Sep 18, 2019. It is now read-only.

Repository files navigation

DEPRECATED

This library has been replaced by https://github.com/Geocodio/geocodio-library-php

geocod.io PHP

Build Status

Thin PHP wrapper for geocod.io geocoding API that includes a service provider for Laravel.

Features

  • Geocode an individual address
  • Batch geocode up to 10,000 addresses at a time
  • Parse an address into its identifiable components

Read the complete geocod.io geocoding API for service documentation.

Installing via Composer

The recommended way to install geocod.io PHP is through Composer.

# Install Composer
curl -sS https://getcomposer.org/installer | php
# Add Geocodio as a dependency
php composer.phar require stanley/geocodio-php:~1.0

After installing, you need to require Composer's autoloader:

require('vendor/autoload.php');

Using

Using the geocod.io PHP library is super simple.

require('vendor/autoload.php');
useStanley\Geocodio\Client;
// Create the new Client object by passing in your api key$client = newClient('YOUR_API_KEY');

Note: Create an API key by signing up at https://dash.geocod.io/auth/register

Geocode single address

To encode a single address, simply pass a string to the geocode function.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data);

Geocode multiple addresses

For multiple addresses, you can pass an array of addresses to the same geocode function.

$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data);

Up to 10,000 addresses can be geocoded in a single batch request

Reverse geocoding a single coordinate

geocod.io also supports reverse geocoding. To convert a single lat/long pair into an address, call the 'reverse' method.

The lat/long pairs should be separateed by a comma.

$data = '35.9746000,-77.9658000';
$result = $client->reverse($data);

Reverse geocoding multiple coordinates

To do a batch conversion, pass your lat/long pairs in an array.

$data = [
'35.9746000,-77.9658000',
'32.8793700,-96.6303900',
'33.8337100,-117.8362320',
'35.4171240,-80.6784760'
];
$result = $client->reverse($data);

Fields

Geocoding and reverse geocoding requests accepts an optional second parameter for fields.

$data = '123 Anywhere St, Chicago, IL';
$result = $client->geocode($data, ['cd', 'stateleg']);
$data = "35.9746000,-77.9658000";
$result = $client->reverse($data, ['cd', 'stateleg']);
$data = [
'123 Anywhere St, Chicago, IL',
'456 Oak St, Los Angeles, CA'
];
$result = $client->geocode($data, ['cd', 'stateleg']);

Return Values

The geocod.io PHP client will return an instance of the Stanley\Geocodio\Data class. The raw response body can be accessed from the response property. This property had the response data stored as an object.

$body = $address->response;

Laravel Service Provider and Facade

A service provder and facade are available if you are using Laravel. Once you've added the package to your composer.json file, run php composer.phar update. Add 'Stanley\Geocodio\ServiceProviders\LaravelServiceProvider'to the providers key. Then, edit the aliases key and add 'Geocodio' => 'Stanley\Geocodio\Geocodio' to the array.

You are now ready to use the Facade. If you are using Laravel, you will need to pass your API Key as the third parameter.

$fields = [];
$key = 'YOUR_API_KEY';
$data = Geocodio::get('123 Anywhere St, Chicago, IL', $fields, $key);
returnresponse()->json($data);

Exceptions

Periodically, the geocod.io service will return errors.

To handle these:

  • An HTTP 403 error raises a GeocodioAuthError
  • An HTTP 422 error raises a GeocodioDataError and the error message will be reported through the exception
  • An HTTP 5xx error raises a GeocodioServerError
  • An unmatched non-200 response will simply raise Exception

Credits

The original library was written by David Stanley. Much of this readme and the structure of this library was inspired by the Py-Geocodio Library by Ben Lopatin.

About

PHP wrapper for the Geocod.io Address encoding library.

Resources

Stars

31 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages