PHP တွင်ကျွန်ုပ်တို့သည်ကြိုးများပြုလုပ်ရန်သို့မဟုတ်နှိုင်းယှဉ်ရန်လိုအပ်သည်။ သဘာဝ sorting မြင်ကွင်းတွင် strnatcasecmp နှင့် strioll နှစ်ခုသည်များသောအားဖြင့်အသုံးပြုသော string နှိုင်းယှဉ်လုပ်ဆောင်မှုများဖြစ်သည်။ နှစ် ဦး စလုံးသည်ကြိုးများကိုနှိုင်းယှဉ်ရန်အသုံးပြုသော်လည်း၎င်းတို့သည်၎င်းတို့နှင့်မည်သို့လုပ်ဆောင်နေကြသည်ကိုအတန်ငယ်ကွဲပြားကြသည်။ ယနေ့ကျွန်ုပ်တို့သည်ဤလုပ်ဆောင်ချက်နှစ်ခုကိုအသေးစိတ်ဖော်ပြရန်သဘာဝ string sorting ၏လိုအပ်ချက်များကိုကိုင်တွယ်ရန်မှန်ကန်သော function ကိုရွေးချယ်ရန်သင့်အားကူညီရန်ဤလုပ်ဆောင်ချက်နှစ်ခုကိုအသေးစိတ်နှိုင်းယှဉ်ပါမည်။
strnatcasecmp :
Strnatcasecmp သည် PHP တွင် function တစ်ခုဖြစ်ပြီးကြိုးနှစ်ချောင်းကို "သဘာဝ sort" နည်းလမ်းဖြင့်နှိုင်းယှဉ်ထားသည်။ "Naturat Sorting" ဟုခေါ်သောအဓိပ္ပာယ်ကိုဆိုလိုသည်မှာ string တစ်ခုရှိနံပါတ်များသည်စာလုံးများသာမကမဟုတ်ဘဲနံပါတ်များအဖြစ်မှတ်ယူလိမ့်မည်ဟုဆိုလိုသည်။ ၎င်း၏နှိုင်းယှဉ်ချက်နည်းလမ်းသည်ကိစ္စတွင်အမှုအားလျစ်လျူရှုခြင်းကိုလျစ်လျူရှုထားသဖြင့်အက်ခရာနှိုင်းယှဉ်မှုတွင်အသေးအဖွဲသည်ခွဲဝေမှုကိုမထိခိုက်ပါ။
သဒ္ဒါ:
int strnatcasecmp ( string $str1 , string $str2 )
Value ကိုပြန်သွားပါ
အကယ်. $ str1 သည် ဒေါ်လာ str2 ထက်နည်းပါကအနုတ်လက်ခဏာနံပါတ်ကိုပြန်ပို့သည်။
$ str1 သည် $ str2 နှင့်ညီသည်ဆိုပါက 0 င်ပါ။
အကယ်. $ str1 သည် ဒေါ်လာ str2 ထက်ကြီးပါကအပြုသဘောဆောင်သောနံပါတ်ကိုပြန်ပို့သည်။
ဥပမာ -
$str1 = "file10";
$str2 = "file2";
echo strnatcasecmp($str1, $str2); // output ကိုအနုတ်နံပါတ်,အကေြာင်းမှာ "file10" သဘာဝအမိန့်အတွက်အဆင့်သတ်မှတ်ချက် "file2" ရေှ့
strioll :
StRCOLL သည် STRECARE SETTING အပေါ် အခြေခံ. ကြိုးနှစ်ချောင်းနှင့်နှိုင်းယှဉ်ထားသည်။ ၎င်းသည်ကြိုးနှင့်နှိုင်းယှဉ်ခြင်းအတွက်ဒေသဆိုင်ရာစည်းမျဉ်းများကိုအသုံးပြုသည်။ ထို့ကြောင့်ရလဒ်သည်ကွဲပြားခြားနားသောဒေသများပေါ် မူတည်. ကွဲပြားနိုင်သည်။ ဘာသာစကားနှင့်ယဉ်ကျေးမှုဆိုင်ရာကွဲပြားခြားနားမှုများကိုစဉ်းစားရန်လိုအပ်သည့်အခြေအနေများကိုစီစဉ်ရန်သင့်တော်သည်။
သဒ္ဒါ:
int strcoll ( string $str1 , string $str2 )
Value ကိုပြန်သွားပါ
အကယ်. $ str1 သည် ဒေါ်လာ str2 ထက်နည်းပါကအနုတ်လက်ခဏာနံပါတ်ကိုပြန်ပို့သည်။
$ str1 သည် $ str2 နှင့်ညီသည်ဆိုပါက 0 င်ပါ။
အကယ်. $ str1 သည် ဒေါ်လာ str2 ထက်ကြီးပါကအပြုသဘောဆောင်သောနံပါတ်ကိုပြန်ပို့သည်။
ဥပမာ -
setlocale(LC_COLLATE, 'en_US.UTF-8'); // area ရိယာတက် setting
$str1 = "apple";
$str2 = "banana";
echo strcoll($str1, $str2); // output ကိုအနုတ်နံပါတ်,အကေြာင်းမှာ "apple" အက္ခရာစဉ် "banana" ရေှ့
အလိုက်စဥ်သည် :
Strnatcasecmp သည် "Natural Sorting" နည်းလမ်းကိုအသုံးပြုသည်။ နံပါတ်များကိုနံပါတ်များအဖြစ်သတ်မှတ်ခြင်း, စာလုံးအကြီးနှင့်အသေးများကိုလျစ်လျူရှုခြင်း,
StRCOLLELS သည် system ၏ locale settings ကို အခြေခံ. ကြိုးကြိုးများနှင့်နှိုင်းယှဉ်ထားသည်။
ကြည့်ရှုပါ ။
သငျသညျသဘာဝ sorting လုပ်ချင်တယ်ဆိုရင်, အထူးသဖြင့်ကြိုးများပါ 0 င်သည့်ကြိုးများကိုနှိုင်းယှဉ်လျှင် strnatcasecmp သည် ပို. သင့်လျော်သည်။ ဥပမာအားဖြင့်ဖိုင်အမည်များကိုသင်နှိုင်းယှဉ်လိုပါက "File1" နှင့် "File10" ကဲ့သို့သော "file1" နှင့် "file10" ကဲ့သို့သော strings များကိုသဘာဝအမိန့်တွင်ခွဲထားသင့်သည်။ ထို့နောက် strnatcasecmp သည်ပိုမိုကောင်းမွန်သောရွေးချယ်မှုဖြစ်သည်။
အထူးသဖြင့်ဘာသာစကားမျိုးစုံပါ 0 င်မှုများကိုကိုင်တွယ်ဖြေရှင်းသည့်အခါ stcoll သည်ပိုမိုသင့်လျော်သော function များနှင့်ဆက်ဆံမှုကိုသတိပြုမိလျှင်, ဥပမာအားဖြင့် stcoll သည် သင်ကြိုးများ (ဥပမာ - အင်္ဂလိပ်သို့မဟုတ်ပြင်သစ်ကဲ့သို့သော) ကြိုးများကိုခွဲထားလိုသည့်အခါ ပို. ပြောင်းလွယ်ပြင်လွယ်ရှိသည်။
စွမ်းဆောင်ရည်ကွဲပြားခြားနားမှုများ :
Strnatcasecmp သည် သဘာဝပတ်ဝန်းကျင်ကိုလုပ်ဆောင်သောအခါအနည်းငယ်နှေးကွေးနိုင်သည်။
လက်ရှိနေရာအသင်းအရ Striolls Sorts Sorts သည်ဒေသတွင်းရှိစွမ်းဆောင်ရည်သည်ဒေသအလိုက်ထိခိုက်စေနိုင်သည်, သို့သော်များသောအားဖြင့်၎င်းသည်ပိုမိုထိရောက်စေသည်။
// အသုံးပြု strnatcasecmp သဘာဝ sorting လုပ်ပါ
$file1 = "file10";
$file2 = "file2";
echo strnatcasecmp($file1, $file2); // output ကိုအနုတ်နံပါတ်,file10 တည်နေ file2 ဉီးစွာ
// အသုံးပြု strcoll Sorting sorting settings ကို sorting
setlocale(LC_COLLATE, 'en_US.UTF-8');
echo strcoll("apple", "banana"); // output ကိုအနုတ်နံပါတ်,အကေြာင်းမှာ apple 排တည်နေ banana ရေှ့
ကြိုးကြိုးများ sorting လုပ်သည့်အခါ Strnatcasecmp သည် "သဘာဝအစဉ်အဆက်" တွင်ကြိုးများပါ 0 င်ပါက, ဒါဟာဂဏန်း sorting ၏လိုအပ်ချက်များကိုပိုမိုနားလည်နိုင်ပါတယ်။ အခြားတစ်ဖက်တွင်, strioll သည်သင်ဘာသာစကားဒေသများမှစီရန်လိုအပ်သည့်နေရာများအတွက်ပိုမိုသင့်တော်သည်။
ထို့ကြောင့်မည်သည့်လုပ်ဆောင်ချက်သည်သင်၏အမှန်တကယ်လိုအပ်ချက်များအပေါ်မူတည်သည်။ အကယ်. သင်သည်ဘာသာစကားလက်ဝါးကပ်တိုင် string sorting လုပ်လိုလျှင် stcoll သည် ပိုကောင်းလိမ့်မည်။ သငျသညျသဘာဝ sorting ကိုသာဂရုစိုက်ပါက Strnatcasecmp သည်အထူးသဖြင့်နံပါတ်များတွင်ပါ 0 င်သည့်အခါ,