Se maxlength HTML è 110, perché non posso ingresso 114 caratteri?
-
13-09-2019 - |
Domanda
<input type="text" id="title" name="title" size="50" maxlength="110" />
Si vede, il maxlength è di 110, ma sono rimasto scioccato quando ho scoperto 114 personaggi che ho ingresso quando ho usato
echo strlen($title);
Qualche idea?
A proposito, che cosa ho voce è stata testo giapponese . Che cosa c'è che non va?
Soluzione
Testo giapponese è molto probabilmente utilizzando una codifica dei caratteri multibyte. Pertanto si dovrebbe fare uso di mb_strlen () .
Un caro saluto, Fabian
Altri suggerimenti
Che cosa c'è che non va?
gestione di stringhe di PHP, che si basa sul presupposto che 1 carattere = 1 byte e lascia al programmatore di Tyke cura di codifiche ovunque e ricordarsi di utilizzare le mb_ più recenti * funzioni ogni volta che si occupano di stringhe che possono utilizzare codifiche multibyte .
maxlength è solo un blocco del browser, ma è escludibile in qualsiasi tipo di strada compreso dalla codifica unicode. È meglio fornire un controllo lato server per questo