mb_strlen функциясы

mb_strlen функциясы көп байттуу коддоолор (мисалы, UTF-8) менен туура иштеп, саптагы белгилердин санын кайтарат. strlenдан айырмаланып, ал бир нече байтты ээлеген белгилерди туура эсептейт. Биринчи параметр катары сапты, экинчи (милдеттүү эмес) параметр катары коддоону кабыл алат.

Синтаксис

phpmb_strlen(string, [encoding]);

Мисал

UTF-8 коддоосундагы саптын узундугун эсептөө:

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

Кодду иштетүүнүн натыйжасы:

php6

Мисал

Кирилл ариби үчүн strlen менен салыштыруу:

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

Кодду иштетүүнүн натыйжасы:

phpstrlen: 8
mb_strlen: 4

Мисал

Коддоону көрсөтпөй колдонуу (коддоо mb_internal_encodingтен алынат):

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

Кодду иштетүүнүн натыйжасы:

php5

Ошондой эле караңыз

  • strlen функциясын,
    ал саптын узундугун байттарда кайтарат
  • mb_substr функциясын,
    ал коддоону эске алып, кичине сапты кесип алат