You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is the a cache provider from the PHP Geocoder. This is a READ ONLY repository. See the
main repo for information and documentation.
Install
composer require geocoder-php/cache-provider
Usage
The ProviderCache allows you to use any PSR-6 compatible cache driver.
You can find compatible drivers on packagist.
By default, the result is cached forever.
You can set a cache expiry by passing an integer representing the number of seconds as the third parameter.
$httpClient = new \Http\Discovery\Psr18Client();
$provider = new \Geocoder\Provider\GoogleMaps\GoogleMaps($httpClient);
$psr6Cache = newArrayCachePool(); // Requires `cache/array-adapter` package$cachedProvider = new \Geocoder\Provider\Cache\ProviderCache(
$provider, // Provider to cache$psr6Cache, // PSR-6 compatible cache600// Cache expiry, in seconds
);
$geocoder = new \Geocoder\StatefulGeocoder($cachedProvider, 'en');
// Will come from Google Maps API$result1 = $geocoder->geocodeQuery(GeocodeQuery::create('Buckingham Palace, London'));
// Will come from the cache$result2 = $geocoder->geocodeQuery(GeocodeQuery::create('Buckingham Palace, London'));
Contribute
Contributions are very welcome! Send a pull request to the main repository or
report any issues you find on the issue tracker.