Foros del Web » Programando para Internet » PHP »

funcion que funciona diferente en local y en server

Estas en el tema de funcion que funciona diferente en local y en server en el foro de PHP en Foros del Web. Hola. Me esta pasando algo curioso. Les queria consultar el porqué del comportamiento de la función strtoupper. En teoría, debería poner a mayúscula todos los ...
  #1 (permalink)  
Antiguo 18/06/2003, 01:09
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 15 años, 5 meses
Puntos: 0
funcion que funciona diferente en local y en server

Hola.
Me esta pasando algo curioso.
Les queria consultar el porqué del comportamiento de la función strtoupper.
En teoría, debería poner a mayúscula todos los caracteres. En local me funciona correctamente, pero en el servidor no pone a mayúscula los caracteres acentuados, por ejemplo: MARTíN GERMáN MANGONE
  #2 (permalink)  
Antiguo 18/06/2003, 02:58
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Eso es normal, porque esa funcion depende del sistema donde este instalado para funcionar. Si en tu equipo tienes configurado el idioma castellano, te reconoce los acentuados como letras normales y sabe ponerlas en mayusculas. Pero si el equipo esta configurado en ingles, los caracteres acentuados son igual que los simbolos, como ?, !, ..., es decir, caracteres que no tienen mayusculas.

Para estos casos podrias usar la funcion strtr() (www.php.net/strtr) para sustituir los acentuados en minusculas a mayusculas.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 18/06/2003, 12:57
 
Fecha de Ingreso: junio-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 876
Antigüedad: 15 años, 5 meses
Puntos: 0
Gracias.
Hare a mano los reemplazos para las acentuadas.
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 17:43.