MB_StrCutut သည် PHP တွင် Mbstring extension ၏အစိတ်အပိုင်းဖြစ်သည်။ အဓိကအားဖြင့် Multibyte စာလုံးများကိုကြားဖြတ်လေ့ကျင့်ရန်အသုံးပြုသည်။ ၎င်း၏ function သည် substric နှင့်ဆင်တူသည်, သို့သော်ခြားနားချက်မှာ MB_StrCutut သည် MB_StrCutT သည် ဇာတ်ကောင်အမှားအယွင်းများအမှားများကိုဖြစ်ပေါ်စေခြင်းမပြုဘဲအမျိုးမျိုးသောစာလုံးများပါ 0 င်သောကြိုးများကိုမှန်ကန်စွာကိုင်တွယ်နိုင်ခြင်းဖြစ်သည်။
mb_strcut(string $str, int $start, int $length = null, string $encoding = null): string
$ str : ကြားဖြတ်ခံရဖို့ string ကို။
$ Start : (Bytes တွင်) ကြားဖြတ် (bytes) ၏စတင်အနေအထား။
$ အရှည် - ကြားဖြတ်သည့်အရှည် (bytes အရေအတွက်) ။ မသတ်မှတ်ပါက string ၏အဆုံးကို $ start မှကြားဖြတ်လိမ့်မည်။
$ encoding : ဇာတ်ကောင် encoding ။ လက်ရှိ PHP configuration (များသောအားဖြင့် UTF-8) ၏ encodation ကိုမှ default ။
ပထမ ဦး စွာသင်အသုံးပြုနေသော string ကို UTF-8 encoded ကြောင်းသေချာပါစေ။ MB_SartCut သည် Multibyte စာလုံးများအတွက်သင့်တော်သောကြောင့် string ၏ encoding format သည်မှန်ကန်ရမည်, များသောအားဖြင့် UTF-8 encoding ကိုအသုံးပြုလေ့ရှိသည်။
$str = "မင်္ဂလာပါ,ရာသီဥတုသည်ယနေ့အလွန်ကောင်းသည်!"; // တရုတ်နှင့်နေရာများပါဝင်သော string ကို
$encoding = "UTF-8";
အကယ်. ကျွန်ုပ်တို့သည် string ၏ပထမ ဦး ဆုံးဇာတ်ကောင်မှ 6 bytes များကိုဖြတ်တောက်လိုပါက၎င်းကိုဤကဲ့သို့သောစာရေးနိုင်သည်။
$sub_str = mb_strcut($str, 0, 6, $encoding);
echo $sub_str; // ထုတ်လုပ်ခြင်း:မင်္ဂလာပါ,ယခု
ဤအချိန်တွင် output သည် "ဟဲလိုယနေ့" ဖြစ်ပြီးအစိတ်အပိုင်းများပါ 0 င်သောအပိုင်းကိုမှန်ကန်စွာကိုင်တွယ်နိုင်ပြီးဇာတ်ကောင်များကိုမဖြတ်ပါနှင့်။
အကယ်. သင်သည် string ၏အဆုံးကိုကြားဖြတ်လိုပါက Null သို့ ဒေါ်လာအရှည်ကို သာသတ်မှတ်ပါ။
$sub_str = mb_strcut($str, 0);
echo $sub_str; // ထုတ်လုပ်ခြင်း:မင်္ဂလာပါ,ရာသီဥတုသည်ယနေ့အလွန်ကောင်းသည်!
ဘုံပြ problem နာတစ်ခုမှာနေရာများပါ 0 င်သည့်ကြိုးများကိုစနစ်တကျကြားဖြတ်ရန်ဖြစ်သည်။ နေရာများသည်အထူးသဖြင့် byte အခြေပြုကြားဖြတ်စစ်ဆေးမှုများကိုအသုံးပြုသောအခါနေရာများသည်အသျှင်များကြားဖြတ်သည့်အခါနေရာများကြားဖြတ်သည့်အခါ string များ၏သမာဓိကိုအကျိုးသက်ရောက်နိုင်သည်။
MB_Strcut ကို သုံးသောအခါ Multibyte စာလုံးများကိုမှန်ကန်စွာကိုင်တွယ်နိုင်သော်လည်းအောက်ပါတို့ကိုထည့်သွင်းစဉ်းစားရန်လိုအပ်သည်။
ဇာတ်ကောင်များအဖြစ်နေရာများ - PHP တွင်နေရာများကိုလည်းအက္ခရာများထည့်သွင်းစဉ်းစားသည်။ Strings ကိုကြားဖြတ်ရန် MB_STRANCT ကို အသုံးပြုသောအခါနေရာများကိုဇာတ်ကောင်များ၏တစ်စိတ်တစ်ပိုင်းအနေဖြင့်ကုသသည်။ ထို့ကြောင့် အစ နှင့် အရှည် parameters များကိုမှန်ကန်စွာသတ်မှတ်ရန်သေချာစေရန်လိုအပ်သည်။
စကားလုံးများကိုမကြိုးစားပါနှင့် - သင် string ကိုအပြည့်အဝစကားလုံးသို့မဟုတ်စကားစုတစ်မျိုးဖြစ်လိုလျှင်အာကာသ၏အနေအထားကိုရှာဖွေရန် MB_Strpos function ကို သုံး. ဤအနေအထားအပေါ် အခြေခံ. ကြားဖြတ်၏အရှည်ကိုသုံးနိုင်သည်။
Encoding ပြ problem နာ - MB_StrCut function ကိုခေါ်တဲ့အခါ string ကို encoding ဆိုတာမှန်ကန်ကြောင်းသေချာအောင်လုပ်ပါ။ အကယ်. encoding မကိုက်ညီပါက,
နေရာများနှင့်အထူးအက္ခရာများ - MB_Strcut သည် bytes အရေအတွက်ကို အခြေခံ. နေရာများ, ဤအရာကိုရှောင်ရှားရန်သို့မဟုတ်၎င်းသည်ဇာတ်ကောင်အလယ်၌သို့မဟုတ်နေရာမတိုင်မီတွင်မဖြစ်ရန်သေချာစေရန်ကြားဖြတ်အနေအထားကိုစစ်ဆေးရန်အကောင်းဆုံးဖြစ်သည်။
စွမ်းဆောင်ရည်ထည့်သွင်းစဉ်းစားချက်များ - MB_StrcCut ၏မကြာခဏအသုံးပြုမှုသည်ကြီးမားသော string ကိုအပြောင်းအလဲအတွက်စွမ်းဆောင်ရည်ပြ problems နာများကိုဖြစ်ပေါ်စေနိုင်သည်။ မလိုအပ်သော string operations များကိုရှောင်ရှားရန်အချက်အလက်အမြောက်အများကိုပြုပြင်သည့်အခါစွမ်းဆောင်ရည်အကောင်းဆုံးကိုလုပ်ဆောင်ရန်အကြံပြုသည်။
ကျွန်ုပ်တို့တွင်စကားလုံးများစွာပါ 0 င်သော string တစ်ခုရှိသည်ဆိုပါစို့။ အာကာသအနေအထားကိုရှာဖွေခြင်းအားဖြင့်ကြားဖြတ်သည့်အချက်သည်နယ်နိမိတ်ပေါ်ရှိစကားလုံးများပေါ်ပေါက်လာကြောင်းသေချာစေနိုင်သည်။
$str = "ဤသည်နေရာများပါသောစာသားအပိုင်းအစတစ်ခုဖြစ်သည်,ရဲ့ကြားဖြတ်ကြကုန်အံ့。";
$encoding = "UTF-8";
// ပထမနေရာ၏အနေအထားကိုရှာပါ
$first_space_pos = mb_strpos($str, ' ', 0, $encoding);
// ပထမ ဦး ဆုံးအာကာသအနေအထားမှာစတင်ပါ,ကြားဖြတ်မတိုင်မီ 10 ဇာတ်ကောင်
$sub_str = mb_strcut($str, 0, $first_space_pos + 10, $encoding);
echo $sub_str; // ထုတ်လုပ်ခြင်း:ဒါကအထုပ်တစ်ခုပါ
ဤဥပမာတွင်ကျွန်ုပ်တို့သည်စကားလုံးများကိုဖြတ်ခြင်းနှင့်အာကာသအနေအထားကို အခြေခံ. စာသားအပြည့်အစုံကိုဖြတ်တောက်သည်။