PHP တွင် string_split () တွင်အသုံးများသော string segment function တစ်ခုဖြစ်ပြီး၎င်းသည် string ကိုအပိုင်းအစငယ်များကိုခွဲခြားနိုင်သည်။ ပုံမှန်အားဖြင့် string_split () သည် string ကိုဇာတ်ကောင်အမိန့်တွင်ခွဲ ထား. စီစဉ်ထားသည့်အစီအစဉ်ကိုပြန်လည်ရောက်ရှိစေသည်။ သို့သော်အထူးကိစ္စရပ်များတွင် strow_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 ကိုဇာတ်ကောင်များဖြင့်စီစဉ်ထားသည့်အစီအစဉ်များကိုခွဲထားသည်။
သို့သော်တစ်ခါတစ်ရံတွင် straysplit ကို အသုံးပြု. Array များအလိုက်ပြန်လည်ရောက်ရှိလာသည့်ပြ a နာတစ်ခုသို့သင်ပြေးနိုင်သည်။ ဤပြ 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] => ကောင်းသော
)
တစ်ခါတစ်ရံတွင် 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);
?>
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 လုပ်နိုင်သည် -
အထူးသဖြင့် Multibyte ဇာတ်ကောင်များအတွက် string encoding မှန်ကန်မှုရှိမရှိအတည်ပြုရန်သင် mb_str_split () ကို သုံးနိုင်သည်။
String တွင်မမြင်ရသောဇာတ်ကောင်များပါ 0 င ် ခြင်းရှိ ,
split length parameter $ အရှည် မှန်ကန်စွာသတ်မှတ်ထားခြင်းရှိမရှိစစ်ဆေးပါ။
အထက်ပါနည်းလမ်းဖြင့် strat_split () function သည်မမှန်ကန်သောအမိန့်ကိုပြန်လည်ရရှိကြောင်းပြ problem နာကိုဖြေရှင်းနိုင်သင့်သည်။