Função mb_strlen
A função mb_strlen retorna o número de caracteres em uma string, funcionando corretamente com codificações multibyte (por exemplo, UTF-8). Diferente de strlen, ela conta corretamente os caracteres que ocupam vários bytes. O primeiro parâmetro é a string, o segundo (opcional) - a codificação.
Sintaxe
mb_strlen(string, [encoding]);
Exemplo
Contando o comprimento de uma string em UTF-8:
<?php
$res = mb_strlen('Привет', 'UTF-8');
echo $res;
?>
Resultado da execução do código:
6
Exemplo
Comparação com strlen para cirílico:
<?php
$str = 'тест';
echo 'strlen: ' . strlen($str) . '<br>';
echo 'mb_strlen: ' . mb_strlen($str, 'UTF-8');
?>
Resultado da execução do código:
strlen: 8
mb_strlen: 4
Exemplo
Uso sem especificar a codificação
(a codificação é obtida de mb_internal_encoding):
<?php
echo mb_strlen('abcde');
?>
Resultado da execução do código:
5