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?

È stato utile?

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

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top