Ver Mensaje Individual
  #10 (permalink)  
Antiguo 17/07/2013, 19:30
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Problemas con acentos,ñ, tildes etc, letra por letra ...

Todo lo que ha dicho HackmanC es correcto, pero, realmente tienes dos opciones:

1- Usar codificación en iso-8859-1 y no tendrás problemas con strlen() ni recorriendo caracter por caracter
2- Usar codificación utf-8 (o cualquier otra multibyte) y las funciones adecuadas: http://www.php.net/manual/es/ref.mbstring.php

Entonces, para saber la longitud de una cadena en utf-8 debes usar mb_strlen() y para recorrer caracter por caracter tendrías que hacer algo como:

Código PHP:
Ver original
  1. $str = "México";
  2. $len = mb_strlen($str,'UTF-8');
  3.  
  4. for($i=0;$i<$len;++$i) {
  5.     echo mb_substr($str, $i, 1, 'UTF-8')."<br/>";
  6. }
__________________
- León, Guanajuato
- GV-Foto