Cuando estamos desarrollando un sitio multiidioma, a veces, nos sería de lo más útil que el propio PHP nos hiciera una traducción de algunos contenidos, para guardarlos o para mostrarlos directamente.
En cualquier caso hoy les dejo esta función que la verdad es bastante funcional cuando realizamos algún parseo.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | /*Hay que pasarle las siguientes variables: $content -> String a traducir $ini -> idioma desde el que queremos traducir $fin -> idioma al que queremos que nos traduzca */ function translate($content, $ini, $fin){ $buff = ""; $ini = strtolower($ini); $fin = strtolower($fin); $url = "http://translate.google.com/translate_a/t?client=t&text=".urlencode($content)."&sl=".$ini."&tl=".$fin.""; $curl_handle = curl_init(); curl_setopt($curl_handle, CURLOPT_URL, $url); curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2); curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl_handle, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.4322; Media Center PC 4.0)'); curl_setopt($curl_handle, CURLOPT_HTTPHEADER, array("Content-type: application/x-www-form-urlencoded;charset=UTF-8")); $buffer = curl_exec($curl_handle); curl_close($curl_handle); if (empty($buffer)) { $buffer = ''; } else { $buffer = substr(trim($buffer), 1, -1); } $buffer = utf8_decode($buffer); $buffer = str_replace("\\n", "", $buffer); return $buffer; } //[ Ejemplo ]// echo translate("Mi perro se llama Pedro", "es", "en"); |
Seguro que les servira a mas de uno saludos!!!:






Escribe un comentario
You must be logged in to post a comment.