Mysql
 sql >> Base de données >  >> RDS >> Mysql

Vérifiez si le caractère UTF-8 nécessite un maximum de trois octets

En supposant que $str est encodé en UTF-8 :

function maxThreeBytes($str) {
    return preg_match('@[\\xf0-\\xff][\\x80-\\xff][\\x80-\\xff][\\x80-\\xff]@', $str) ? false : true;
}

Il vérifie si la chaîne contient quatre caractères qui correspondent à 11110xxxb 10xxxxxxb 10xxxxxxb 10xxxxxxb qui est l'encodage des caractères entre U+10000 et U+10FFFF.