he estado buscando por un tiempo cómo es la mejor manera de traducir con traductor de Google en PHP, encontré formas muy diferentes de convertir URL, o usar Js, pero quiero hacerlo solo con php (o con una solución muy simple JS/jQuery)
ejemplo:
//hopefully with $from_lan and $to_lan being like 'en','de', .. or similar
function translate($from_lan, $to_lan, $text){
// do
return $translated_text;
}
me puede dar una pista? o tal vez ya tiene esta función ...
mi intención es usarla solo para los idiomas que no he definido aún (o claves que no he definido), es por eso que lo quiero tan simple, será solo temporal ..
EDITAR
gracias por sus respuestas que estamos tratando esta Soulutions:
function auto_translate($from_lan, $to_lan, $text){
// do
$json = json_decode(file_get_contents('https://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=' . urlencode($text) . '&langpair=' . $from_lan . '|' . $to_lan));
$translated_text = $json->responseData->translatedText;
return $translated_text;
}
(había una 'g' extra en var iables de lang ... de todos modos)
vuelve: funciona ahora :)
Realmente no entiendo mucho la función, por lo que cualquier idea de por qué no se acepting el objeto? (Ahora yo)
O:
function auto_translate($from_lan, $to_lan, $text){
// do
// $json = json_decode(file_get_contents('https://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=' . urlencode($text) . '&langpair=' . $from_lan . '|' . $to_lan));
// $translated_text = $json['responseData']['translatedText'];
error_reporting(1);
require_once('GTranslate.php');
try{
$gt = new Gtranslate();
$translated_text = $gt->english_to_german($text);
} catch (GTranslateException $ge)
{
$translated_text= $ge->getMessage();
}
return $translated_text;
}
Y éste se ve muy bien, pero ni siquiera me da un error, la página no se carga (error_report (1): S)
gracias de antemano!
json_decode devuelve un objeto, no una matriz. Entonces, tendrías que hacer '$ json-> responseData-> translatedText' en lugar de' $ json ['responseData'] ['translatedText'] ', que ahora veo que tienes debajo. – Phoenix