Función para traducir

xmatias Siguiendo

Gamma
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
8 Jun 2014
Mensajes
281
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:
 

UserAlfa

Beta
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
25 Mar 2014
Mensajes
90
¿Para que quieres lograr esto?

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

hugo1

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
28 Dic 2012
Mensajes
90
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;
 

UserAlfa

Beta
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
25 Mar 2014
Mensajes
90

xmatias

Gamma
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
8 Jun 2014
Mensajes
281
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.
 

memoadian

Épsilon
Programador
Verificación en dos pasos activada
Desde
8 Feb 2013
Mensajes
940
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.
 

xmatias

Gamma
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
8 Jun 2014
Mensajes
281
Ya lo solucioné gracias al ejemplo de hugo1, gracias a todos :encouragement:
 

maduranma

Beta
Programador
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
19 Jun 2014
Mensajes
75
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.
 

xmatias

Gamma
Verificación en dos pasos activada
Verificado por Whatsapp
Desde
8 Jun 2014
Mensajes
281
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? :eek:
 

memoadian

Épsilon
Programador
Verificación en dos pasos activada
Desde
8 Feb 2013
Mensajes
940
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:
Arriba