Funcția mb_strlen
Funcția mb_strlen returnează numărul de caractere dintr-un șir, lucrând corect cu codificări multibyte (de exemplu, UTF-8). Spre deosebire de strlen, ea numără corect caracterele care ocupă mai mulți biți. Primul parametru primește șirul, al doilea (opțional) - codificarea.
Sintaxă
mb_strlen(string, [encoding]);
Exemplu
Numărarea lungimii șirului în UTF-8:
<?php
$res = mb_strlen('Привет', 'UTF-8');
echo $res;
?>
Rezultatul executării codului:
6
Exemplu
Comparație cu strlen pentru chirilică:
<?php
$str = 'тест';
echo 'strlen: ' . strlen($str) . '<br>';
echo 'mb_strlen: ' . mb_strlen($str, 'UTF-8');
?>
Rezultatul executării codului:
strlen: 8
mb_strlen: 4
Exemplu
Utilizare fără a specifica codificarea
(codificarea este preluată din mb_internal_encoding):
<?php
echo mb_strlen('abcde');
?>
Rezultatul executării codului:
5