ဖွံ့ဖြိုးရေးလုပ်ငန်းစဉ်အတွင်းကျွန်ုပ်တို့သည် string အတွက်တရုတ်စာလုံးအရေအတွက်ကိုရေတွက်ရန်လိုအပ်သည်။ PHP သည် MB_strinlen ကိုထောက်ပံ့ပေးသည်။ ထို့နောက်ကျွန်ုပ်တို့သည်ရိုးရှင်းသောဥပမာတစ်ခုကိုပြပါလိမ့်မည်။
အထက်ပါကုဒ်တွင်တရုတ်အက္ခရာများပါ 0 င်သည့် string string ကို သတ်မှတ်ပြီးတရုတ်စကားလုံးအရေအတွက်ကိုရယူရန် MB_strinlen function ကိုအသုံးပြုပါ။ သတိပြုရန်မှာ encoding method သည်တရုတ်အက္ခရာများကိုမှန်ကန်စွာရေတွက်နိုင်စေရန်သေချာစေရန် 'utf-8' ကိုသတ်မှတ်ထားသည်။
တရုတ်နှင့်အင်္ဂလိပ်အက္ခရာများကိုရေတွက်သောအခါရလဒ်များသည်များသောအားဖြင့်ကွဲပြားသည်။ ဥပမာအားဖြင့် string " PHP Real-Time Chinese ဇာတ်ကောင်အရေအတွက်" တွင်တရုတ်အက်ခရာ 10 လုံးပါ 0 င်ပြီး,
အထက်ပါကုဒ်များမှတစ်ဆင့် strlen function ကို အသုံးပြု. ရေတွက်သောဇာတ်ကောင်အရှည်များသည်အင်္ဂလိပ်နှင့်တရုတ်စာလုံးများအတွက်ကွဲပြားသော encoding နည်းလမ်းများပါဝင်သည်ကိုကျွန်ုပ်တို့တွေ့မြင်နိုင်သည်။
တရုတ်နှင့်အင်္ဂလိပ်စာလုံးအရေအတွက်ကိုတွက်ချက်သောအခါ strlen function သည် MB_strinlen function နှင့်ကွဲပြားသည်။ အထူးသဖြင့် strlen ကို byte အရှည်ကိုတွက်ချက်ရန်အသုံးပြုသည်။ MB_Strlen သည် ဇာတ်ကောင်အရှည်ကိုတွက်ချက်ရန်အသုံးပြုသည်။
အပေါ်ကပြထားတဲ့အတိုင်း strlen ရလဒ် 68 ၏ရလဒ်ကိုပြန်ပို့သည်။ ထို string အတွက် bytes အရေအတွက်နှင့်ဇာတ်ကောင်အရေအတွက်မဟုတ်ပါ။
ဥပမာအားဖြင့် PHP ရှိတရုတ်နှင့်အင်္ဂလိပ်အက္ခရာများကိုလုပ်ဆောင်ခြင်းသည်ကွဲပြားခြားနားသည်ကိုသတိပြုသင့်သည်။ strlen function တွင်တရုတ်ဇာတ်ကောင်သည်များသောအားဖြင့်သုံး bytes သုံးခုကိုယူလေ့ရှိသည်။ ဤအရာကိုအောက်ပါကုဒ်များဖြင့်အတည်ပြုနိုင်သည်။
ဤကုဒ်မှတဆင့်အင်္ဂလိပ်အက္ခရာများနှင့်တရုတ်စာလုံးအရေအတွက်အကြားသိသိသာသာကွာခြားမှုရှိကြောင်းရှင်းရှင်းလင်းလင်းတွေ့မြင်နိုင်သည်။
အချုပ်အားဖြင့်ဆိုရလျှင်, strlen သည်အင်္ဂလိပ်အက္ခရာများအတွက်အဓိကအသုံးပြုသော byte အရှည်များကိုတွက်ချက်ရန်သင့်တော်သည် ။ နှစ်ခုအကြားခြားနားချက်ကိုနားလည်ခြင်းသည်ရောနှောဘာသာစကားကြိုးများကိုကိုင်တွယ်ရန်အလွန်အရေးကြီးသည်။