Función para traducir

  • Autor Autor xmatias
  • Fecha de inicio Fecha de inicio
X

xmatias

Gamma
Verificación en dos pasos activada
Necesito una función que me permita traducir una cadena reemplazando las palabras por otras por ej: traducir(''hello''); y que me devuelva hola. Tengo una idea de realizarlo son srt_replace, pero no se como ¿alguien me podría ayudar?

Gracias :encouragement:
 
¿Para que quieres lograr esto?

Lo pregunto porque no es buena idea para algo en producción ni como ejercicio de programación.
 
¿Para que quieres lograr esto?

Lo pregunto porque no es buena idea para algo en producción ni como ejercicio de programación.

¿Por que no es buena idea para algo en producción?
 
PHP:
traducir('Argentina will win the World Cup!');

function traducir($cadena)
{
	$ingles[0] = 'will win';
	$espanol[0] = 'ganara';

	$ingles[1] = 'the world cup';
	$espanol[1] = 'la copa del mundo';
	echo str_ireplace($ingles, $espanol, $cadena);
}

También puedes hacer algo asi:
PHP:
// Idioma ingles o español
$idioma = 'ingles';

switch($idioma)
{
	case 'ingles':
	define('ganara', 'will win the World Cup!');
	break;

	case 'español':
	define('ganara', 'ganara la copa del mundo!');
}

echo 'Argentina '. ganara;
 
La verdad no es crear una web multi-idiomas, me enrredé mucho, lo que quiero es reemplazar ciertas palabras por otras con una función.
 
Porque si quieres presentar una web en diferentes idiomas tienes que hacer algo como esto: Crear web multi-lenguaje con php | jc-Mouse.net

Lo que quieres saber es "como crear una web multi-idioma" y no una "funcion para traducir"(no es muy buen termino para lo que quieres).

Eso es solo una forma de hacerlo no es que siempre se deba hacer así, yo he hecho webs multi idioma con simple javascript.

y bueno si [MENTION=110299]xmatias[/MENTION] quieres solo reemplazar ciertas palabras por otras con una función pues no hay más str_replace, quizas si eres más específico. y nos dices exactamente lo que buscas.
 
Ya lo solucioné gracias al ejemplo de hugo1, gracias a todos :encouragement:
 
Eso es solo una forma de hacerlo no es que siempre se deba hacer así, yo he hecho webs multi idioma con simple javascript.

y bueno si [MENTION=110299]xmatias[/MENTION] quieres solo reemplazar ciertas palabras por otras con una función pues no hay más str_replace, quizas si eres más específico. y nos dices exactamente lo que buscas.

A ver, obviamente lo puedes hacer por JavaScript, pero lo mejor es ya directamente hacer un sistema de lenguajes sólido.
En mi framework tu pones la palabra en cada archivo de idiomas
Ingles: 'cancel' -> 'Cancel',
Español: 'cancel' -> 'Cancelar',
Y luego en el HTML tan fácil como poner $welcomeText$ o $cancel$ y esas cosas.
 
A ver, obviamente lo puedes hacer por JavaScript, pero lo mejor es ya directamente hacer un sistema de lenguajes sólido.
En mi framework tu pones la palabra en cada archivo de idiomas
Ingles: 'cancel' -> 'Cancel',
Español: 'cancel' -> 'Cancelar',
Y luego en el HTML tan fácil como poner $welcomeText$ o $cancel$ y esas cosas.
¿Qué framework? 😱
 
A ver, obviamente lo puedes hacer por JavaScript, pero lo mejor es ya directamente hacer un sistema de lenguajes sólido.
En mi framework tu pones la palabra en cada archivo de idiomas
Ingles: 'cancel' -> 'Cancel',
Español: 'cancel' -> 'Cancelar',
Y luego en el HTML tan fácil como poner $welcomeText$ o $cancel$ y esas cosas.

Pues claro, en Codeigniter, Zend, Symphony, Laravel etc. eso ya viene (se usan arrays asociativos), pero como digo eso no tienen nada que ver con que sea malo ponerlo en producción, en este caso no hablamos de si es fácil o difícil hacerlo de una u otra forma si no de que el usuario dice que hacerlo como quiere xmatias no es bueno para una web en producción y eso no tiene ninguna relación.
 
Última edición:
Atrás
Arriba