¿Cuál es la diferencia entre las funciones iconv_strlen, mb_strlen y strlen?¿Cuál es la diferencia entre las funciones PHP iconv_strlen, mb_strlen y strlen?
¿Y para qué se utiliza cada uno en el mundo real?
¿Cuál es la diferencia entre las funciones iconv_strlen, mb_strlen y strlen?¿Cuál es la diferencia entre las funciones PHP iconv_strlen, mb_strlen y strlen?
¿Y para qué se utiliza cada uno en el mundo real?
La diferencia de strlen()
a mb_strlen()
es que el segundo respeta los caracteres multibyte. Esto significa que este es el recuento real del personaje. El primero asume que la cadena siempre está en ascii, lo que también significa que siempre devuelve el tamaño en bytes (muy útil cuando se manejan "cadenas" binarias).
Por lo que veo iconv_strlen()
es bastante similar a mb_strlen()
, pero falla en las secuencias de caracteres incorrectos, en contraste con mb_strlen()
, que simplemente los ignora. Y usa el iconv
-library (obviamente;)).