Ver Mensaje Individual
  #8 (permalink)  
Antiguo 14/03/2012, 12:09
Avatar de h2swider
h2swider
 
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 16 años, 9 meses
Puntos: 194
Respuesta: Problema con "str_replace"

reitero tengo el netbeans al igual que tu, el proyecto en iso-8859

y tu código me funciona a la perfección, por que no intentas ese encoding?

Código PHP:
Ver original
  1. <?php
  2.  
  3. function caracteresNormales($str) {
  4.     $str = trim($str);
  5.     $str = strtolower($str);
  6.  
  7.     //Esta parte se encarga de eliminar cualquier caracter extraño
  8.     $str = str_replace(
  9.             array("\\", "¨", "º", "-", "~",
  10.         "#", "@", "|", "!", "\"",
  11.         "·", "$", "%", "&", "/",
  12.         "(", ")", "?", "'", "¡",
  13.         "¿", "[", "^", "`", "]",
  14.         "+", "}", "{", "¨", "´",
  15.         ">", "<", ";", ",", ":",
  16.         ".", " "), '', $str
  17.     );
  18.  
  19.     $str = str_replace(
  20.             array('á', 'à', 'ä', 'â', 'ª'), "a", $str
  21.     );
  22.  
  23.     $str = str_replace(
  24.             array('é', 'è', 'ë', 'ê'), "e", $str
  25.     );
  26.  
  27.     $str = str_replace(
  28.             array('í', 'ì', 'ï', 'î'), "i", $str
  29.     );
  30.  
  31.     $str = str_replace(
  32.             array('ó', 'ò', 'ö', 'ô'), "o", $str
  33.     );
  34.  
  35.     $str = str_replace(
  36.             array('ú', 'ù', 'ü', 'û'), "u", $str
  37.     );
  38.  
  39.     $str = str_replace('ç', 'c', $str);
  40.  
  41.     $str = str_replace('ñ', 'n', $str);
  42.  
  43.     return $str;
  44. }
  45.  
  46. $test = array("hola+", "hòla", "hölè", "hïí-la", "ho-_@·la", "hólâ");
  47. foreach ($test as $valor) {
  48.     echo caracteresNormales($valor) . "\n";
  49. }
  50. ?>
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives