2013-03-24 6 views
1

Я пытаюсь использовать перевод API Google, как показано на этой странице ...выберите узел из JSon строки

https://developers.google.com/translate/v2/using_rest

Когда я заменить мой ключ API, он работает правильно и отображать переведенный текст как показано ниже.

GET https://www.googleapis.com/language/translate/v2?key=INSERT-YOUR-KEY&target=de&q=Hello%20world

{ 
    "data": { 
     "translations": [ 
      { 
       "translatedText": "Hallo Welt", 
       "detectedSourceLanguage": "en" 
      } 
     ] 
    } 
} 

Я хотел бы вернуться только текст, т.е. "Hallo Welt" с помощью PHP.

Я использовал функцию json_decode, но он возвращает все.

+0

Какой у вас код PHP? –

ответ

4
$url = "https://www.googleapis.com/language/translate/v2?key=INSERT-YOUR-KEY&target=de&q=Hello%20world"; 
$data = file_get_contents($url); 
$json = json_decode($data); 

echo $json->data->translations[0]->translatedText; 
+0

Это ничего не возвращает. Но print_r ($ json-> data-> translations); возвращает Array ([0] => stdClass Object ([translationText] => Hallo [detectedSourceLanguage] => en)) – shantanuo

+0

Отредактированный ответ, переводы - это массив. – flux

0
$object = json_decode($yourJSONString); 
echo $object->data->translations->translatedText; 

После того, как вы использовали json_decode(), вы просто использовать полученный объект, однако использовать любой другой объект PHP.

Смежные вопросы