Foros del Web » Programando para Internet » PHP »

Texto a Mayusculas y Minusculas

Estas en el tema de Texto a Mayusculas y Minusculas en el foro de PHP en Foros del Web. Estoy utilizando las funciones strtolower, strtoupper, ucfirst y ucwords, pero estas funciones no convierten caracteres como las ñ o las vocales acentuadas. ¿Que puedo hacer ...
  #1 (permalink)  
Antiguo 03/10/2006, 07:48
Avatar de oskarL  
Fecha de Ingreso: mayo-2005
Ubicación: Madrid
Mensajes: 499
Antigüedad: 18 años, 11 meses
Puntos: 2
Texto a Mayusculas y Minusculas

Estoy utilizando las funciones strtolower, strtoupper, ucfirst y ucwords, pero estas funciones no convierten caracteres como las ñ o las vocales acentuadas.

¿Que puedo hacer para conseguir convertir tambien esos caracteres?

Gracias
__________________
Solo hay 10 clases de personas, las que saben binario y las que no.
  #2 (permalink)  
Antiguo 03/10/2006, 08:23
Avatar de seyacat  
Fecha de Ingreso: agosto-2006
Mensajes: 382
Antigüedad: 17 años, 8 meses
Puntos: 0
$texto = strtr("áéíóúñ","ÁÉÍÓÚÑ",$texto)...

y bueno las otras tambien por ahi..

PD: no sabia que no cojia esos caracteres, supongo que debe ser como dices
  #3 (permalink)  
Antiguo 03/10/2006, 08:42
Avatar de oskarL  
Fecha de Ingreso: mayo-2005
Ubicación: Madrid
Mensajes: 499
Antigüedad: 18 años, 11 meses
Puntos: 2
Gracias por la solucion, esta bastante bien.

La unica pega es al utilizarla junto a ucwords, que pone en mayusculas la primera letra de cada palabra. Si uso strtr me convierte en mayuscula todo caracter que le coloque, y no solo la primera de cada palabra... De todas formas es un problema menor.

Yo tampoco lo sabia hasta que lo utilice, y luego buscando en www.php.net poner esto:

Nótese que las letras son definidas por la localización actual (el "locale" actual). Esto quiere decir que, por ejemplo, en el locale por defecto ("C"), los caracteres como la Ñ no serán convertidos.

Asi que lo que hecho al final es usar la funcion setlocale

setlocale(LC_CTYPE, "es_ES");
__________________
Solo hay 10 clases de personas, las que saben binario y las que no.

Última edición por oskarL; 04/10/2006 a las 02:10
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:13.