Функция 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 функцияси,
    бу кодировкани хисобга олган холда қисм қириқчани олади