Pregunta

<input type="text" id="title" name="title" size="50" maxlength="110" />

Usted ve, el maxlength es de 110, pero me sorprendió cuando me encontré con que la entrada E 114 caracteres cuando utilicé

echo strlen($title);

¿Alguna idea?

Por cierto, lo que de entrada era texto en japonés . ¿Qué pasa?

¿Fue útil?

Solución

texto en japonés es muy probablemente utilizando una codificación de caracteres de varios bytes. Por lo tanto usted debe hacer uso de mb_strlen () .

Los mejores deseos, Fabian

Otros consejos

  

¿Qué pasa?

manejo de cadenas de PHP, que se basa en la suposición de que 1 carácter = 1 byte y lo deja al programador a TYKE cuidado de codificaciones en todas partes y recuerde utilizar los mb_nogueira @ yahoo.com más recientes * funciones cada vez que se ocupan de las cadenas que pueden utilizar codificaciones multibyte .

maxlength es sólo un bloqueo del navegador pero es Anulable en cualquier tipo de trayecto, por la codificación Unicode. Será mejor que proporciona un control del lado del servidor para este

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top