ফাংশন 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,
    যা এনকোডিং বিবেচনা করে একটি সাবস্ট্রিং কেটে নেয়