22/09/2009, 20:22
|
| Colaborador | | Fecha de Ingreso: marzo-2009 Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 9 meses Puntos: 101 | |
Esto funciona: Cita: preg_replace("/[^a-zA-Z\_\-0-9]/", "", $nombre); Estoy probando esto: Cita: // Convertir acentos y tildes
$search = array('.', 'Á', 'É', 'Í', 'Ó', 'Ú', 'á', 'é', 'í', 'ó', 'ú', 'Ü', 'ü', 'Ñ', 'ñ');
$replace = array('_', 'a', 'e', 'i', 'o', 'u', 'a', 'e', 'i', 'o', 'u', 'u', 'u', 'n', 'n');
$nombre = str_replace($search, $replace, strtolower(trim($nombre))); Y al parecer me transforma el punto. Pero no la á acentuada.
Y en el manual de PHP encontré esto: Cita: // replace accented chars
$accents = '/&([A-Za-z]{1,2})(grave|acute|circ|cedil|uml|lig);/'; para un preg_replace. Pruebo.
Esto funcionó: Cita: $nombre= utf8_encode(strtr(utf8_decode($nombre), '.áéíóuÁÉÍÓÚÜñÑ' , '_aeiouAEIOUunn')); Era un problema de UTF-8
Última edición por GatorV; 23/09/2009 a las 09:59 |