Cortar cadenas UTF-8 en PHP

Cuando trabajamos con cadenas en UTF-8 (si queréis más información sobre juegos de caracteres os recomiendo esta entrada: Entender los juegos de caracteres y “collation” I y II que escribí hace tiempo) no podemos usar la función típica para hacer subcadenas de PHP: substr, ya que en el caso de que el corte caiga justo en un carácter no ASCII, habrá un problema en la representación y aparecerá un carácter extraño.

El origen de este problema es que se trata de un juego de caracteres en el que cada carácter no tiene por qué tener un sólo byte de tamaño, si no que puede llegar a ocupar 4 bytes como máximo, es decir, también puede ocupar 2 o 3 bytes. read more

Leer más » 2 Comentarios