Funksjonen mb_strlen

Funksjonen mb_strlen returnerer antall tegn i en streng, og fungerer korrekt med flerbyte-kodinger (for eksempel UTF-8). I motsetning til strlen, teller den riktig tegn som opptar flere byte. Den tar strengen som første parameter, og kodingen som andre (valgfri) parameter.

Syntaks

phpmb_strlen(string, [encoding]);

Eksempel

Teller lengden på en streng i UTF-8:

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

Resultat av kjøring av kode:

php6

Eksempel

Sammenligning med strlen for kyrilliske tegn:

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

Resultat av kjøring av kode:

phpstrlen: 8
mb_strlen: 4

Eksempel

Bruk uten å spesifisere koding (koding hentes fra mb_internal_encoding):

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

Resultat av kjøring av kode:

php5

Se også

  • funksjonen strlen,
    som returnerer lengden på en streng i byte
  • funksjonen mb_substr,
    som kutter ut en delstreng med hensyn til koding