mb_strlen funksiyasi

mb_strlen funksiyası, çoxbaytlı kodlaşdırmalarla (məsələn, UTF-8) düzgün işləyərək sətirdəki simvolların sayını qaytarır. strlen-dən fərqli olaraq, bir neçə bayt tutan simvolları düzgün hesablayır. Birinci parametr kimi sətri, ikinci (isteğe bağlı) parametr kimi isə kodlaşdırmanı qəbul edir.

Sintaksis

phpmb_strlen(string, [encoding]);

Nümunə

UTF-8-də sətirin uzunluğunun hesablanması:

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

Kodun icrasının nəticəsi:

php6

Nümunə

Kirill əlifbası üçün strlen ilə müqayisə:

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

Kodun icrasının nəticəsi:

phpstrlen: 8
mb_strlen: 4

Nümunə

Kodlaşdırma göstərilmədən istifadə (kodlaşdırma mb_internal_encoding-dən götürülür):

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

Kodun icrasının nəticəsi:

php5

Həmçinin baxın

  • strlen funksiyası,
    sətirin uzunluğunu baytlarla qaytarır
  • mb_substr funksiyası,
    kodlaşdırmanı nəzərə alaraq alt sətri kəsir