Actualmente las grandes potencias se miden en factores. El factor de Polaxia eres Tu!
Páginas: [1]   Ir Abajo
Imprimir
Autor Tema: Eliminar caracteres raros de una cadena con PHP  (Leído 150 veces)
0 Usuarios y 1 Visitante están viendo este tema.
shevchenko
Gran Colaborador
*****

Gracias recibidos: 642
Desconectado Desconectado

Sexo: Masculino
Mensajes: 1340


Si la vida no te sonrie? ¡Hazle cosquillas!


Ver Perfil WWW

« en: Agosto 14, 2008, 09:43:25 »

Esta función es casi elemental cuando se trabaja con formularios en PHP, si no elemental, es importante conocerla.

Bueno esta función mismamente no, por que es una que me he hecho yo mismo pero supongo que habrán cientos similares… en cualquier caso, aquí pongo la mía, para guardarla en algún sitio y poder reutilizarla cuando la necesite, y ya de paso quizá ayudar a alguien Smiley

Función para eliminar caracteres raros (como acentos y simbolos) de una cadena:
Código:
function quitar_caracteres_raros($cadena){
$caracteres = 'À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö Ø Ù Ú Û Ü Ý Þ ß à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ø ù ú û ü ý þ ÿ ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ­ ® ¯ ° ± ² ³´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ × ÷ " \' & < >';
$caracteres    =    explode(' ',$caracteres);
$nchar        =    count($caracteres);
$base        =    0;
while($base<$nchar){
$cadena = str_replace($caracteres[$base],'_',$cadena);
$base++;
}
return $cadena;
}

Así, si tenemos una variable con una cadena como por ejemplo:
Código:
$titulo = 'Bitácora Josep Viciana';

Y le aplicamos la función:
Código:
$titulo = quitar_caracteres_raros($titulo);

Ahora al mostrar el valor de la variable mostraría "Bit_cora Josep Viciana", compatible con nombres de carpetas, URL, bases de datos… etc.

Los caracteres que se eliminan son los que están en la variable $caracteres, que son Registrate es GRATIS! para ver los links Rapidshare Megaupload Descarga
estos.

EDIT:
Si lo que se quiere es sólo quitar acentos pero dejar las letras, se puede utilizar esto:
Código:
$cadena = strtr($cadena, "áäàéëèíïìóöòúüùñ", "aaaeeeiiiooouuun");

fuente:
Registrate es GRATIS! para ver los links Rapidshare Megaupload Descarga
En línea


Páginas: [1]   Ir Arriba
Imprimir
Ir a:  

¿Como postear en Polaxia? - ¿Quieres subir una imagen al foro? - Subir archivos - F.A.Q - Registrarse