Pregunta

He publicado una pregunta ayer, pero me acabo de dar cuenta de que la respuesta no parece estar trabajando para una situación determinada.El post fue en php las variables de cadena en gettext y esto es lo que me preguntó acerca de:

Hola,

¿Cómo gettext traducir cadena las variables?No parecen querer hacerlo..digamos que tengo $frase = "Hola Mundo";y luego quiero que a echo ($sentencia);...cómo puedo hacer que lo que me puede traducir lo que está dentro de $frase en Poedit?Puedo usar -> echo sprintf(("%s" de prueba), $frase) y esto imprimirá "Hola Mundo" en el el navegador, pero aparecerá como "%s prueba" en Poedit y no tengo la traducido de la versión de Hola Mundo dentro de Poedit.Entonces, ¿cómo puedo utilizar las variables de cadena en el interior de Poedit?Gracias!

Esto ha sido resuelto.

El problema se produce si me quieren agarrar de datos desde un archivo XML y traducirlo.

Quiero ser capaz de hacer lo siguiente:

$foo = $xmlData -> titleText;

y, a continuación,

echo _($foo); 

o algo así

$finalVar = _($foo);

Si miro el archivo php en el navegador puedo ver el contenido de la variable $foo en la página, pero Poedit no recoge la cadena dentro de la variable $foo, así que me puede traducir.

(Creo que este problema también se produce cuando la traducción de información dentro de los archivos js)

Gracias por su ayuda,

Simon

¿Fue útil?

Solución

Obviamente, usted no puede hacer Poedit entender PHP.

EDITAR:¿Usted ha considerado un enfoque diferente?

if (true) {
    $foo = _('variable holds true');
}

else {
    $foo = _('variable holds false');
}

echo $foo;

Usted puede tener PHP generado gettext compatible con XML y con respecto a la base de datos, creo que la mejor solución es almacenar la traducción en la base de datos en sí, sin embargo también puede crear una secuencia de comandos para volcar todas las claves y valores de la base de datos y el uso de gettext en él.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top