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?