https://www.geocod.io/docs/?php#introduction
https://github.com/Geocodio/geocodio-php
1) composer require stanley/geocodio-php:~1.0
in .env:
GEOCODIO_KEY=51f4b66166da0866baa5087b81f6f8d51d6f660
2) open config/app.php
in providers array:
'Stanley\Geocodio\ServiceProviders\LaravelServiceProvider',
in aliases array:
'Geocodio' => 'Stanley\Geocodio\Geocodio'
3) in Controller top use:
<?php
use Geocodio;
/*===============================================
GET LATITUDE / LONGITUDE
==============================================*/
public function getLatitudeLongitude( $location ) {
$fields = [];
$key = env('GEOCODIO_KEY') ;
$data = Geocodio::get( $location, $fields, $key);
return $data;
}
/*===============================================
STORE NEW PROPERTY
===============================================*/
public function store( Request $request ) {
$loc = $this->getLatitudeLongitude( $request->location ) ;
$property = Property::create([
'location' => $request->location,
'latitude' => $loc->response->results[0]->location->lat,
'longitude' => $loc->response->results[0]->location->lng,
]);
if( $request->hasFile('image') )
$this->StoreFile( $request->file('image'), $member, '/properties', 'image' ) ;
Session::flash('success', 'Property created succesfully.');
return redirect()->route('property.index');
}