Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Verifique se o caractere UTF-8 requer no máximo três bytes


Supondo que $str é codificado em UTF-8:
function maxThreeBytes($str) {
    return preg_match('@[\\xf0-\\xff][\\x80-\\xff][\\x80-\\xff][\\x80-\\xff]@', $str) ? false : true;
}

Ele verifica se a string contém quatro caracteres que correspondem a 11110xxxb 10xxxxxxb 10xxxxxxb 10xxxxxxb que é a codificação para caracteres entre U+10000 e U+10FFFF.