Мне было интересно, может ли кто-нибудь помочь мне с небольшим количеством кода, который у меня есть.PHP - Возвращаемые значения из API Карт Google
У меня есть функция, которая заключается в следующем:
function getAddressComponent($lat, $lng, $field) {
$returnValue = '-';
$url = 'http://maps.googleapis.com/maps/api/geocode/json?latlng='.trim($lat).','.trim($lng).'&sensor=false';
$data = @file_get_contents($url);
$json = json_decode($data, TRUE);
if (isset($json['results'])) {
foreach($json['results'] as $result) {
foreach ($result['address_components'] as $address_component) {
$types = $address_component['types'];
if (in_array($field, $types) && sizeof($types) == 1) {
$returnValue = $address_component['short_name'];
}
}
}
}
return $returnValue;
}
я вызываю функцию так:
$returnAddress = $this->getAddressComponent(-34.872693, 138.490391, 'administrative_area_level_1');
Если я запустить функцию для типа administrative_area_level_1, она ничего не возвращает, но если Я использую $ url и вхожу в lat и lng в url, он возвращает результаты для этого типа ... Массив выглядит так.
{
"results" : [
{
"address_components" : [
{
"long_name" : "22",
"short_name" : "22",
"types" : [ "street_number" ]
},
{
"long_name" : "Blue-Sails Court",
"short_name" : "Blue-Sails Ct",
"types" : [ "route" ]
},
{
"long_name" : "West Lakes",
"short_name" : "West Lakes",
"types" : [ "locality", "political" ]
},
{
"long_name" : "South Australia",
"short_name" : "SA",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Australia",
"short_name" : "AU",
"types" : [ "country", "political" ]
},
{
"long_name" : "5021",
"short_name" : "5021",
"types" : [ "postal_code" ]
}
],
Он возвращает '-'
для населенного пункта и страны, а также один.
Я хочу, чтобы вернуть '-'
, если оно не существует, но в этом случае он действительно существует, и его делает мою голову.
Любая помощь будет принята с благодарностью.
Приветствия,
Красивая ... Это сделало трюк ... Большое вам спасибо! – BigJobbies
@BigJobbies уверен, что человек рад, что это помогло – Ghost