လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> string ပြောင်းလဲခြင်းနှင့်သဘာဝ sorting ကိုအကောင်အထည်ဖော်ရန် strnatcasecmp နှင့် strtr ကိုပေါင်းစပ်နည်း။

string ပြောင်းလဲခြင်းနှင့်သဘာဝ sorting ကိုအကောင်အထည်ဖော်ရန် strnatcasecmp နှင့် strtr ကိုပေါင်းစပ်နည်း။

gitbox 2025-05-19

PHP, strnatcasecmp နှင့် strtr တွင်အလွန်အသုံးဝင်သောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်သည်။ ယခင်ကသဘာဝ sorting နှင့်နှိုင်းယှဉ်ခြင်းအတွက်အသုံးပြုသည်။ အကယ်. သင်သည်တူညီသောအစားထိုးပြီးနောက်သဘာဝတွင်အသီးအနှံများကိုဆွတ်ခူးရန်လိုအပ်ပါကဤလုပ်ဆောင်မှုနှစ်ခုကိုပေါင်းစပ်ခြင်းသည်အလွန်ထိရောက်လိမ့်မည်။

ဤဆောင်းပါးသည်အစားထိုးပြီးနောက် strnatcasecmp ကို အသုံးပြု. အက္ခရာများကိုကြိုးဖြင့်အစားထိုးရန် strowtr ကို မည်သို့အသုံးပြုရမည်ကိုပြလိမ့်မည်။

1 ။ strnatcasecmp function ကိုနားလည်ပါ

strnatcasecmp function သည် PHP တွင်အသုံးပြုသော function တစ်ခုဖြစ်ပြီးသဘာဝ sorting နှိုင်းယှဉ်မှုများပြုလုပ်ရန်ဖြစ်သည်။ ဒါဟာအစဉ်အလာအဘိဓာန်နှင့်ကွဲပြားခြားနားနှိုင်းယှဉ်။ ၎င်းသည်နံပါတ်များကိုအစဉ်အလာအနေဖြင့်မပါ 0 င်ပါ။ ဥပမာအားဖြင့်,

function ရှေ့ပြေးပုံစံ:

 int strnatcasecmp ( string $str1 , string $str2 )
  • str1 နှင့် str2 သည်နှိုင်းယှဉ်ရန်ကြိုးနှစ်ချောင်းရှိသည်။

  • str1 သည် str2 ထက်ငယ်လျှင်အနုတ်တန်ဖိုးကိုပြန်ပို့သည်။ အကယ်. သာ. ကြီးလျှင်တစ် ဦး အပြုသဘောတန်ဖိုးကိုပြန်ရောက်သည်; အကယ်. ၎င်းသည်တန်းတူဖြစ်ပါက 0 ပြန်လာပြီ။

2 ။ strtr function ကိုနားလည်ပါ

strtr function ကို string ကိုအတွက်အက္ခရာများအစားထိုးရန်အသုံးပြုသည်။ parameters နှစ်ခုကိုလက်ခံသည်။

  • ပထမ ဦး ဆုံး parameter သည်အစားထိုးရန်လိုအပ်သည့်ပစ်မှတ် string ကိုဖြစ်ပါတယ်။

  • ဒုတိယ parameter သည်အခြားအက္ခရာများနှင့်အစားထိုးရန်မည်သည့်ဇာတ်ကောင်များကိုအစားထိုးရမည်ကိုသတ်မှတ်သည့်ဇာတ်ကောင်မြေပုံဖြစ်သည်။

function ရှေ့ပြေးပုံစံ:

 string strtr ( string $str , string $from , string $to )

ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည်အက္ခရာများကိုအခြားအက္ခရာများဖြင့်အစားထိုးရန် strowtr ကို သုံးနိုင်သည်။

3 ။ strtr နှင့် strnatcasecmp ကိုပေါင်းစပ်ပါ

ကွဲပြားခြားနားသောဇာတ်ကောင်များနှင့်နံပါတ်များပါသောဖိုင်အမည်များပါ 0 င်သည့်ကြိုးများရှိသည်ဆိုပါစို့။ အချို့သောဇာတ်ကောင်များကိုအစားထိုးပြီးနောက်သဘာဝအရကျွန်ုပ်တို့အသားစားဆက်ဆံလိုပါက Target ဇာတ်ကောင်များကိုအရင်အစားထိုးရန် Strtr function ကို သုံး. strnatcasecmp function ကိုသုံးနိုင်သည်။

ဒီမှာဥပမာတစ်ခုပါ။

 <?php
// sort ဖို့ကြိုးများခင်းကျင်း
$files = [
    'file10.txt',
    'file2.txt',
    'file1.txt',
    'file20.txt',
];

// ဇာတ်ကောင်အစားထိုးစည်းကမ်းများသတ်မှတ်
$trans = ['f' => 'F', 'e' => 'E'];

// အသုံးပြု strtr ဇာတ်ကောင်အစားထိုးဖျော်ဖြေ
$transformed_files = array_map(function($file) use ($trans) {
    return strtr($file, $trans);
}, $files);

// အသုံးပြု strnatcasecmp သဘာဝကျကျအစားထိုး strings sort
usort($transformed_files, 'strnatcasecmp');

// output ကို sorted ရလဒ်များ
print_r($transformed_files);
?>

4 ။ ကုဒ်ကိုရှင်းပြပါ

  1. sorted လုပ်ရန်ကြိုးများခင်းကျင်းမှုကိုသတ်မှတ်ပါ ။ ကျွန်ုပ်တို့သည်ဖိုင်အမည်များပါ 0 င်သော array ဖိုင်များကို ပထမ ဦး ဆုံးသတ်မှတ်သည်။

  2. ဇာတ်ကောင်အစားထိုးနည်းဥပဒေများ - ကျွန်ုပ်တို့သည် stritt strtr မှတ ဆင့် ဇာတ်ကောင်အစားထိုးစည်းမျဉ်း များကို သတ်မှတ်သည်

  3. အစားထိုးခြင်း - ကူးယူထားသောဖိုင်အမည်ခင်းကျင်းရန်အတွက်ဖိုင်အမည်တစ်ခုစီကို strowr ကို အသုံးပြုရန် array_map function ကိုအသုံးပြုသည်။

  4. သဘာဝ sorting : finaged filname ခင်းကျင်းကို usort and strnatcasecmp အားဖြင့် Sort လုပ်ထားပါကသဘာဝ sorting စည်းမျဉ်းစည်းကမ်းများအရစီစဉ်ထားသည်။

  5. နောက်ဆုံးရလဒ် - နောက်ဆုံးအနေဖြင့် filename array ကို print_r မှတဆင့်ထုတ်ပေးသည်။

5 ။ နိဂုံးချုပ်

strnatcasecmp နှင့် strtr ကို ပေါင်းစပ်ခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် strings string ကိုအစားထိုးပြီးနောက် sorting ၏သဘာဝအမိန့်ကိုဆက်လက်ထိန်းသိမ်းထားနိုင်ကြသည်။ ဖိုင်အမည်များ, ဗားရှင်းနံပါတ်များနှင့်သဘာဝ sorting လိုအပ်သောအခြားကြိုးများနှင့်ဆက်ဆံရာတွင်ဤနည်းလမ်းသည်အလွန်အသုံးဝင်သည်။ ဤဆောင်းပါးသည် PHP တွင် string အစားထိုးခြင်းနှင့် sorting ကိုကိုင်တွယ်ရန်ဤလုပ်ငန်းဆောင်တာနှစ်ခုကိုမည်သို့အသုံးပြုရမည်ကိုပိုမိုနားလည်သဘောပေါက်ရန်မျှော်လင့်ပါသည်။