Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/03/2010, 02:34
manzarinaa
 
Fecha de Ingreso: noviembre-2007
Mensajes: 382
Antigüedad: 16 años, 5 meses
Puntos: 16
[solucionado + o -]sobre buscar y reemplazar y la codificación

Hola a tod@s!
Estoy queriendo renombrar nombres de ficheros quitandoles los espacios y caracteres raros. Pasa que en algunos casos me funciona y en otros no.
sobre un documento en blanco tengo un array del tipo
Código:
$replaces=array(
        "/[áàäâå]/" => "a",
        "/[éèëê]/" => "e",
        "/[íìïî]/" => "i",
        "/[óòöô]/" => "o", 
         ....
en este caso con
preg_replace(array_keys($replaces), array_values($replaces), strtolower($string)
funciona perfectamente
le añado la etiqueta:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
y funciona si a $string le paso utf8_decode($string) antes del preg_replace
ahora esto lo llevo a mi aplicación....
si no le paso el utf8_decode la sustitucion de una á por a me devuelve �
y si se lo paso á se me sustituye por ãa.

No tengo claro por que en uno me lo hace y en otro no. Y supongo que le tengo que pasar alguna función que codifique y descodifique, pero ya saliendo del ut8_encode y _decode me pierdo.
¿Qué pude ser?¿Cómo lo arreglo?
Muchas gracias.
Un saludo.

Última edición por manzarinaa; 03/03/2010 a las 10:31