Funktio mb_strlen

Funktio mb_strlen palauttaa merkkien määrän merkkijonossa, toimien oikein monitavuisilla koodauksilla (esim. UTF-8). Toisin kuin strlen, se laskee oikein merkit, jotka vievät useita tavuja. Se ottaa ensimmäisenä parametrina merkkijonon, toisena (valinnaisena) - koodauksen.

Syntaksi

phpmb_strlen(string, [encoding]);

Esimerkki

Merkkijonon pituuden laskeminen UTF-8:ssa:

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

Koodin suorituksen tulos:

php6

Esimerkki

Vertaaminen strlen:iin kyrillisille merkeille:

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

Koodin suorituksen tulos:

phpstrlen: 8
mb_strlen: 4

Esimerkki

Käyttö ilman koodauksen määrittelyä (koodaus otetaan mb_internal_encoding:stä):

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

Koodin suorituksen tulos:

php5

Katso myös

  • funktion strlen,
    joka palauttaa merkkijonon pituuden tavuina
  • funktion mb_substr,
    joka leikkaa osamerkkijonon ottaen huomioon koodauksen