Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/10/2009, 03:23
viktoria
 
Fecha de Ingreso: septiembre-2006
Mensajes: 349
Antigüedad: 20 años
Puntos: 0
utf-8 (letra "à")

Buenos dias a todos,

Estoy migrando una DB u estoy pasando los valores tipo varchar o text con la funcion str_replace

El array de conversion que utilizo

Código PHP:
$search = array("á", "ó", "í", "ú", "é", "ñ", 
"Á", "É", "Ó", "Í", "Ú", "Ñ", 
"à", "è", "ì", "ò", "ù", "ï",  
"À", "È", "Ì", "Ò", "Ù", 
"¿","ü","î","¡","Ü","Î","ç","Ç", "Ï",  
"&");
$replace   = array("á", "ó", "Ã*", "ú", "é", "ñ", 
"Ã�", "É", "Ó", "Ã�", "Ú", "Ñ",
 
"à", "è", "ì", "ò", "ù", 
 
"À", "È", "ÃŒ", "Ã’", "Ù", 
 
"¿","ü","î","¡","Ü","ÃŽ","ç","Ç","Ã",
 
"&"); 
Esta funcionando correctamente con una exepcion de la letra "à".
Esta letra tiene que ser reemplazada por "Ã ", pero el resultado final se muestra con signo "?". Como si no reconociera el caracter "Ã ".

Ejemplo de cadena
Código PHP:
$cadena = "Agricultura orgànica";

$newString = str_replace($search, $replace, $cadena);

//el strgin que tengo nuevo en la tabla es "Agricultura orgànica "

// el string que esta mostrandose en la pagina "Agricultura org� nica" 

Lo curioso que solo pasa con letra "à". Las demas letras se convierten y se muestran correctamente. La pagina que los muestra logicamente esta en utf-8.

Gracias a todos.