Funktsioon mb_strlen

Funktsioon mb_strlen tagastab märkide arvu stringis, töötades korrektselt mitmebaidikodeeringutega (näiteks UTF-8). Erinevalt strlen-ist loeb see õigesti kokku märgid, mis võtavad enda alla mitu baiti. Esimeseks parameetriks võtab stringi, teiseks (valikuliseks) - kodeeringu.

Süntaks

phpmb_strlen(string, [encoding]);

Näide

Stringi pikkuse lugemine UTF-8-s:

php<?php
  $res = mb_strlen('Привет', 'UTF-8');
  echo $res;
?>

Koodi täitmise tulemus:

php6

Näide

Võrdlus strlen-iga kirillitsa jaoks:

php<?php
  $str = 'тест';
  echo 'strlen: ' . strlen($str) . '<br>';
  echo 'mb_strlen: ' . mb_strlen($str, 'UTF-8');
?>

Koodi täitmise tulemus:

phpstrlen: 8
mb_strlen: 4

Näide

Kasutamine ilma kodeeringu määramata (kodeering võetakse mb_internal_encoding-ist):

php<?php
  echo mb_strlen('abcde');
?>

Koodi täitmise tulemus:

php5

Vaata ka

  • funktsiooni strlen,
    mis tagastab stringi pikkuse baitides
  • funktsiooni mb_substr,
    mis lõikab välja alamstringi, arvestades kodeeringut