This is the JSON output: I want to get only the formatted_address value & long_name & short_name. I referred to questions people already asked but I don't get it right. refered to:
get city from geocoder results?
{
"results" : [
{
"address_components" : [
{
"long_name" : "Jalan Sungai Chua",
"short_name" : "B11",
"types" : [ "route" ]
},
{
"long_name" : "Sungai Chua",
"short_name" : "Sungai Chua",
"types" : [ "sublocality_level_1", "sublocality", "political" ]
},
{
"long_name" : "Kajang",
"short_name" : "Kajang",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Selangor",
"short_name" : "Selangor",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Malaysia",
"short_name" : "MY",
"types" : [ "country", "political" ]
},
{
"long_name" : "43000",
"short_name" : "43000",
"types" : [ "postal_code" ]
}
],
"formatted_address" : "Jalan Sungai Chua, Sungai Chua, 43000 Kajang, Selangor, Malaysia",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 2.9932816,
"lng" : 101.787477
},
"southwest" : {
"lat" : 2.9932814,
"lng" : 101.7873144
}
},
"location" : {
"lat" : 2.9932815,
"lng" : 101.7873957
},
"location_type" : "GEOMETRIC_CENTER",
"viewport" : {
"northeast" : {
"lat" : 2.994630480291502,
"lng" : 101.7887446802915
},
"southwest" : {
"lat" : 2.991932519708498,
"lng" : 101.7860467197085
}
}
},
"place_id" : "ChIJcSMkCHjLzTERU6wXGzYy14I",
"types" : [ "route" ]
},
{
"address_components" : [
{
"long_name" : "Petronas Jalan Enggang",
"short_name" : "Petronas Jalan Enggang",
"types" : [ "point_of_interest", "establishment" ]
},
{
"long_name" : "Kajang",
"short_name" : "Kajang",
"types" : [ "sublocality_level_1", "sublocality", "political" ]
},
{
"long_name" : "Kajang",
"short_name" : "Kajang",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Selangor",
"short_name" : "Selangor",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Malaysia",
"short_name" : "MY",
"types" : [ "country", "political" ]
},
{
"long_name" : "43000",
"short_name" : "43000",
"types" : [ "postal_code" ]
}
],
"formatted_address" : "Petronas Jalan Enggang, Kajang, 43000 Kajang, Selangor, Malaysia",
"geometry" : {
"location" : {
"lat" : 2.994144,
"lng" : 101.78781
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 2.995492980291502,
"lng" : 101.7891589802915
},
"southwest" : {
"lat" : 2.992795019708498,
"lng" : 101.7864610197085
}
}
},
"place_id" : "ChIJN5uCE3jLzTERpHUSvJFj5To",
"types" : [
"bus_station",
"transit_station",
"point_of_interest",
"establishment"
]
},
{
"address_components" : [
{
"long_name" : "Kajang",
"short_name" : "Kajang",
"types" : [ "sublocality_level_1", "sublocality", "political" ]
},
{
"long_name" : "Kajang",
"short_name" : "Kajang",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Kajang",
"short_name" : "Kajang",
"types" : [ "administrative_area_level_4", "political" ]
},
{
"long_name" : "Hulu Langat",
"short_name" : "Hulu Langat",
"types" : [ "administrative_area_level_3", "political" ]
},
{
"long_name" : "Selangor",
"short_name" : "Selangor",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Malaysia",
"short_name" : "MY",
"types" : [ "country", "political" ]
},
{
"long_name" : "43000",
"short_name" : "43000",
"types" : [ "postal_code" ]
}
],
"formatted_address" : "Kajang, 43000 Kajang, Selangor, Malaysia",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 2.9980711,
"lng" : 101.79819
},
"southwest" : {
"lat" : 2.986342,
"lng" : 101.7843368
}
},
"location" : {
"lat" : 2.9919972,
"lng" : 101.7908387
},
"location_type" : "APPROXIMATE",
"viewport" : {
"northeast" : {
"lat" : 2.9980711,
"lng" : 101.79819
},
"southwest" : {
"lat" : 2.986342,
"lng" : 101.7843368
}
}
},
"place_id" : "ChIJsfCmp3jLzTERJuiZjvHEHSA",
"types" : [ "sublocality_level_1", "sublocality", "political" ]
},
{
"address_components" : [
{
"long_name" : "Kajang",
"short_name" : "Kajang",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Hulu Langat",
"short_name" : "Hulu Langat",
"types" : [ "administrative_area_level_3", "political" ]
},
{
"long_name" : "Selangor",
"short_name" : "Selangor",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Malaysia",
"short_name" : "MY",
"types" : [ "country", "political" ]
}
],
"formatted_address" : "Kajang, Selangor, Malaysia",
"geometry" : {
"bounds" : {
"northeast" : {
"lat" : 3.069515,
"lng" : 101.8336388
},
"southwest" : {
"lat" : 2.8684469,
"lng" : 101.69742
}
},
"location" : {
"lat" : 2.993518,
"lng" : 101.7874058
},
MY PHP function to get the reverse geocoding for the lat and lon given
public function get_location()
{
$this->location = $param;
$location = file_get_contents('http://maps.googleapis.com/maps/api/geocode/json?latlng=2.993518,101.7874058&sensor=true');
return $location;
}
I tried parsing like this:
$search = new search();
$data = $search->get_location();//caries the JSON data
$return['json']= json_encode($data);
$data = json_decode($return['json'], true);
But how to target long_name,formatted address and so on?