Az mb_strlen függvény

Az mb_strlen függvény a sztringben található karakterek számát adja vissza, megfelelően működve a többszörös bájtkódolásokkal (például UTF-8). A strlen függvénnyel ellentétben helyesen számolja azokat a karaktereket, amelyek több bájtot foglalnak el. Első paraméterként egy sztringet, második (opcionális) paraméterként pedig a kódolást fogadja el.

Szintaxis

phpmb_strlen(string, [encoding]);

Példa

Sztring hosszának meghatározása UTF-8 kódolásban:

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

A kód végrehajtásának eredménye:

php6

Példa

Összehasonlítás a strlen függvénnyel cirill betűk esetén:

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

A kód végrehajtásának eredménye:

phpstrlen: 8
mb_strlen: 4

Példa

Használat kódolás megadása nélkül (a kódolás az mb_internal_encoding értékéből veszi):

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

A kód végrehajtásának eredménye:

php5

Lásd még

  • az strlen függvényt,
    amely a sztring hosszát bájtokban adja vissza
  • az mb_substr függvényt,
    amely kódolásfigyelő részsztring kivágást végez