လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> strow_split သည်မမှန်ကန်ကြောင်းအမိန့်ကိုပြန်ပို့လျှင်ကျွန်ုပ်ဘာလုပ်သင့်သနည်း။

strow_split သည်မမှန်ကန်ကြောင်းအမိန့်ကိုပြန်ပို့လျှင်ကျွန်ုပ်ဘာလုပ်သင့်သနည်း။

M66 2025-05-28

PHP တွင် string_split () တွင်အသုံးများသော string segment function တစ်ခုဖြစ်ပြီး၎င်းသည် string ကိုအပိုင်းအစငယ်များကိုခွဲခြားနိုင်သည်။ ပုံမှန်အားဖြင့် string_split () သည် string ကိုဇာတ်ကောင်အမိန့်တွင်ခွဲ ထား. စီစဉ်ထားသည့်အစီအစဉ်ကိုပြန်လည်ရောက်ရှိစေသည်။ သို့သော်အထူးကိစ္စရပ်များတွင် strow_split () ကို အသုံးပြုသောအခါပြန်လည်နေရာချထားသည့်ခင်းကျင်းအမှာစာမှာခြွင်းချက်များရှိနိုင်သည်။

stract_Split ၏အခြေခံအသုံးပြုမှု ()

ပထမဥပမာကိုကြည့်ကြပါစို့။ strow_split () function ကိုမည်သို့အသုံးပြုရမည်နည်း။

 <?php
$string = "hello";
$array = str_split($string);
print_r($array);
?>

ဤကုဒ်သည်အောက်ပါခင်းကျင်းမှုကိုထုတ်ပေးသည်။

 Array
(
    [0] => h
    [1] => e
    [2] => l
    [3] => l
    [4] => o
)

သင်မြင်နိုင်သည့်အတိုင်း strat_split () လုပ်ဆောင်ချက်သည် string ကိုဇာတ်ကောင်များဖြင့်စီစဉ်ထားသည့်အစီအစဉ်များကိုခွဲထားသည်။

ပြနာ - Array အမှာစာမမှန်ကန်ပါ

သို့သော်တစ်ခါတစ်ရံတွင် straysplit ကို အသုံးပြု. Array များအလိုက်ပြန်လည်ရောက်ရှိလာသည့်ပြ a နာတစ်ခုသို့သင်ပြေးနိုင်သည်။ ဤပြ problem နာ၏အကြောင်းရင်းများသည်မတူကွဲပြားသောကြောင့်မတူကွဲပြားသောကြောင့်အောက်ပါအတိုင်းဖြစ်နိုင်ချေရှိသောအခြေအနေများနှင့်ဖြေရှင်းနည်းများကိုဖော်ပြထားသည်။

1 ။ ဇာတ်ကောင် encoding ပြ problem နာ

PHP သည် UTF-8 encoding ကိုပုံမှန်အားဖြင့်အသုံးပြုသည်။ အကယ် . သင်၏ string တွင် Multibyte အက္ခရာများပါ 0 င်ပါက, Multi-byte အက္ခရာများအတွက် str._SPLTIT အတွက် စာလုံးများကိုအမှန်တကယ်စာလုံးများဖြင့်ခွဲထုတ်မည့်အစားစာလုံးများကို bytes ထဲသို့ခွဲထွက်လိမ့်မည်။

ဖြေရှင်းချက် - Multibyte ဇာတ်ကောင်များအတွက် MB_Str_Split () function ကိုသုံးနိုင်သည်

 <?php
$string = "မင်္ဂလာပါ";
$array = mb_str_split($string);
print_r($array);
?>

ဤနည်းဖြင့်ပြန်လာသောရလဒ်မှာ -

 Array
(
    [0] => ခင်ဗျားတို့
    [1] => ကောင်းသော
)

2 ။ ဖြတ်သန်း string တွင်မမြင်ရသောဇာတ်ကောင်များပါရှိသည်

တစ်ခါတစ်ရံတွင် string သည်နေရာများ, လိုင်းချိုးများစသဖြင့်မမြင်ရသောဇာတ်ကောင်များပါ 0 င်နိုင်သည်။

ဖြေရှင်းချက် - string ကိုအစွန်အဖျားရှိမျက်မြင်မရသောဇာတ်ကောင်များကိုဖျက်ရန်အတွက် Whitespace ဇာတ်ကောင်များကိုဖယ်ရှားရန်သို့မဟုတ် string'replace () ကို သုံး. string လုပ်ထားသောစာလုံးများကိုဖယ်ရှားရန် trim (strittace) ကိုဖယ်ရှားရန်သင်သုံးသော trim () function ကိုသုံးနိုင်သည်။

 <?php
$string = " hello ";
$string = trim($string); // နှစ် ဦး စလုံးကြီးစွန်းမှာ whitespace ဇာတ်ကောင်ဖယ်ရှားပါ
$array = str_split($string);
print_r($array);
?>

3 ။ အရှည်ပြ problem နာ split

strow_split () function သည် array ဒြပ်စင်တစ်ခုစီ၏အများဆုံးအရှည်ကိုကိုယ်စားပြုသော optional parameter $ အရှည် ရှိသည်။ အကယ်. သင်သည်အရှည်ကိုဖြတ်သန်းပါက PHP သည်ထိုအရှည်ဖြင့် string ကိုခွဲထုတ်လိုက်သည်။ အကယ်. $ အရှည် တန်ဖိုးကိုမလျော်ကန်စွာသတ်မှတ်ထားပါက၎င်းသည်မျှော်လင့်ထားသည့်အတိုင်းခွဲထွက်နိုင်သည်။

ဖြေရှင်းချက် - မှန်ကန်စွာသတ်မှတ်ထားရန်သေချာစေရန် $ အရှည် parameter သည်ကိုစစ်ဆေးပါ။ ဥပမာအားဖြင့်, array ဒြပ်စင်တစ်ခုစီကိုစာလုံး 2 လုံးပါ 0 င်ချင်တယ်ဆိုရင်,

 <?php
$string = "abcdef";
$array = str_split($string, 2); // တိုင်း2အက်ခရာအစုတခု
print_r($array);
?>

output ကိုဖြစ်လိမ့်မည်:

 Array
(
    [0] => ab
    [1] => cd
    [2] => ef
)

နိဂုံးချုပ်အားဖြင့်

strow_split () လုပ်ဆောင်ချက်သည်အများအားဖြင့်မျှော်လင့်ထားသည့်အတိုင်းအလုပ်လုပ်သည်။ သို့သော်သင်ပြန်လာသော array ၏မှားယွင်းသောအမိန့်ကိုသင်ကြုံတွေ့ရပါကအောက်ပါနည်းလမ်းများမှတဆင့် debug လုပ်နိုင်သည် -

  1. အထူးသဖြင့် Multibyte ဇာတ်ကောင်များအတွက် string encoding မှန်ကန်မှုရှိမရှိအတည်ပြုရန်သင် mb_str_split () ကို သုံးနိုင်သည်။

  2. String တွင်မမြင်ရသောဇာတ်ကောင်များပါ 0 င ခြင်းရှိ ,

  3. split length parameter $ အရှည် မှန်ကန်စွာသတ်မှတ်ထားခြင်းရှိမရှိစစ်ဆေးပါ။

အထက်ပါနည်းလမ်းဖြင့် strat_split () function သည်မမှန်ကန်သောအမိန့်ကိုပြန်လည်ရရှိကြောင်းပြ problem နာကိုဖြေရှင်းနိုင်သင့်သည်။