လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP တွင် strlen နှင့် mb_strlen string အရှည်၏ခြားနားချက်နှင့်အသုံးပြုမှုနည်းလမ်း

PHP တွင် strlen နှင့် mb_strlen string အရှည်၏ခြားနားချက်နှင့်အသုံးပြုမှုနည်းလမ်း

gitbox 2025-06-27

မိတ်ဆက်ပေး

PHP Development တွင်ပြုပြင်ခြင်းသည်များသောအားဖြင့်အလွန်များသောအားဖြင့်ခွဲစိတ်ကုသမှုတစ်ခုဖြစ်ပြီး string တစ်ခု၏အရှည်ရရှိခြင်းသည်၎င်းသည်အရေးကြီးသောအစိတ်အပိုင်းဖြစ်သည်။ PHP သည် string အရှည်များကိုရရှိရန်နည်းလမ်းအမျိုးမျိုးကိုထောက်ပံ့ပေးသည်။ အသုံးအများဆုံးမှာ strlen () နှင့် mb_strlen () ဖြစ်သည်။ ဤဆောင်းပါးသည်ဤလုပ်ဆောင်မှုနှစ်ခုနှင့်၎င်းတို့အကြားကွဲပြားခြားနားမှုများကိုအသေးစိတ်ဖော်ပြရန်အသေးစိတ်ကိုအသေးစိတ်မိတ်ဆက်ပေးလိမ့်မည်။

strlen () function ကို

strlen () သည် PHP တွင်ပါ 0 င်သော function တစ်ခုဖြစ်ပြီး string တစ်ခု၏ byte အရှည်ကိုပြန်ပို့ရန်ဖြစ်သည်။ အင်္ဂလိပ်အက္ခရာများသို့မဟုတ် UTF-8 encoding တွင်အထူးအက္ခရာများမပါ 0 င်သောကြိုးများအတွက်သင့်တော်သည်။

strlen ၏အသုံးပြုမှု ()

 
$str = 'Hello world!';
$length = strlen($str);
echo $length;

output ရလဒ် -

12

strlen အကြောင်းမှတ်သားရမည့်အရာများ ()

၎င်းကို strlen () သည် အက်ခရာအရေအတွက်ထက် bytes အရေအတွက်ကိုတွက်ချက်ထားသင့်ကြောင်းသတိပြုသင့်သည်။ ထို့ကြောင့်ရရှိသောရလဒ်များသည်တရုတ်သို့မဟုတ်အခြားသော Multi-byte အက္ခရာများအတွက်မတိကျနိုင်ပါ။ ဒီ function ကိုအသုံးပြုပြီးအင်္ဂလိပ်အက်ခရာမဟုတ်သောစကားလုံးများပါ 0 င်သော strings များပြုလုပ်သောအခါယုတ္တိအမှားများကိုဖြစ်ပေါ်စေသည်။

mb_strlen () function ကို

MB_strinlen () function သည် Multi-byte string processing processing function ၏အစိတ်အပိုင်းဖြစ်ပြီး UTF-8 ကဲ့သို့သော Multi-byte encoding အတွက်သင့်တော်ပြီးတရုတ်နှင့်ဂျပန်ကဲ့သို့သော Ascii မဟုတ်သောဇာတ်ကောင်အရေအတွက်ကိုတိကျစွာရေတွက်နိုင်သည်။

mb_strlen ၏အသုံးပြုမှု ()

 
$str = 'မင်္ဂလာပါ,ကမ်ာဘ!';
$length = mb_strlen($str, 'UTF-8');
echo $length;

output ရလဒ် -

7

mb_strinlen ၏ parameter သည်ဖော်ပြချက် ()

MB_Strlen () parameters နှစ်ခုကိုလက်ခံရရှိသည်။

  • ပထမ ဦး ဆုံး parameter သည်အရှည်တွက်ဆရန်လိုအပ်သည့် string ကိုဖြစ်ပါတယ်။
  • ဒုတိယ parameter သည် optional encoding format တစ်ခုဖြစ်ပြီး MB_Internal_encoding () မှပြန်လာသော encoding သည်ပုံမှန်အားဖြင့်အသုံးပြုသည်။

MB_Strlen တွင်မှတ်စုများ ()

MB_strinlen () သည် Multi-byte strings များကိုမှန်ကန်စွာကိုင်တွယ်နိုင်သော်လည်းစင်ကြယ်သောအင်္ဂလိပ်သို့မဟုတ်တစ်ကိုယ်ရေစာလုံးများကိုထုတ်လုပ်သည့်အခါ၎င်း၏စွမ်းဆောင်ရည်သည် strlen () ကို အနည်းငယ်ယုတ်ညံ့သည်။ ထို့ကြောင့် strlen () ကို အသုံးပြုခြင်းသည် Multibyte ဇာတ်ကောင်များမပါ 0 င်သည့်အခါပိုမိုထိရောက်စေသည်။

strlen () နှင့် mb_strlen အကြားခြားနားချက် ()

နှစ်ခုအကြားအကြီးမားဆုံးကွာခြားချက်မှာဇာတ်ကောင် encoding ကိုကိုင်တွယ်နိုင်စွမ်းဖြစ်သည်။

  • Strlen () Ascii သို့မဟုတ်ရိုးရှင်းသော UTF-8 encoded strings များအတွက်သင့်တော်သော bytes အရေအတွက်ကိုပြန်ပို့သည်။
  • MB_strinlen () အထူးသဖြင့်တရုတ်နှင့်ဂျပန်ဘာသာစကားများတွင် Multibyte ဇာတ်ကောင်များထုတ်လုပ်ရန်အတွက်သင့်တော်သည့်စာလုံးအရေအတွက်ကိုပြန်ပို့သည်။

အကယ်. ပြုပြင်ထားသော string တွင်တရုတ်သို့မဟုတ်အခြားအထူးအက္ခရာများပါ 0 င ပါက,

အကျဉ်းချုပ်

PHP ဖွံ့ဖြိုးတိုးတက်မှုတွင်ကျိုးကြောင်းဆီလျော်သောအရှည် function ကိုရွေးချယ်ရန်အလွန်အရေးကြီးသည်။ အင်္ဂလိပ်အက္ခရာများသာပါ 0 င်သည့်ကြိုးများ, strlen ကိုသုံးပါ။ သို့သော်တရုတ်သို့မဟုတ်အခြား multi-byte အက္ခရာများပါ 0 င်ပါက MB_Strlen () သည် မှန်ကန်သောစာလုံးအရေအတွက်ကိုရရှိရန်အသုံးပြုသင့်သည်။ ဤလုပ်ဆောင်မှုနှစ်ခု၏အသုံးပြုမှုကိုကျွမ်းကျင်မှုသည်ကုဒ်၏တည်ငြိမ်မှုနှင့်လိုက်လျောညီထွေဖြစ်ခြင်းကိုတိုးတက်စေသည်။