လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Natsort, အသေးစိတ်အဆင့်များမှတစ်ဆင့်ဖိုင်အမည်များကိုသဘာဝအရအမျိုးအစားခွဲခြားရန်

Natsort, အသေးစိတ်အဆင့်များမှတစ်ဆင့်ဖိုင်အမည်များကိုသဘာဝအရအမျိုးအစားခွဲခြားရန်

gitbox 2025-06-09

သဘာဝကဘာလဲ?

သဘာဝ Sort သည်စာနယ်ဇင်းများ၏စာသားအတိုင်းအလိုက်ခွဲနေသည့်နည်းလမ်းဖြစ်သည်။ ရိုးရာအက္ခရာစဉ်နှင့်မတူဘဲ Natsort () Natsort () သည် နံပါတ်များ၏အရွယ်အစားဆက်နွယ်မှုကိုထည့်သွင်းစဉ်းစားသည်။ ဥပမာအားဖြင့်:

  • File1.txt သည် File2.txt ၏ရှေ့တွင်ရှိသည်

  • File10.txt သည် File2.txt နောက်တွင်ရှိသည်

ဒီ sorting နည်းလမ်းသည်ကျွန်ုပ်တို့၏နေ့စဉ်စဉ်းစားတွေးခေါ်ပုံထက်ရိုးရှင်းသောအက္ခရာစဉ်ထက်ပိုမိုကိုက်ညီသည်။


ဖိုင်အမည်များကိုသဘာဝင်းစေရန် Natsort ကိုသုံးပါ

အဆင့် 1 - ဖိုင်အမည်ခင်းကျင်းမှုကိုရယူပါ

ပထမ ဦး စွာကျွန်ုပ်တို့သည်ဖိုင်အမည်များပါ 0 င်သည်။ ယေဘူယျအားဖြင့်ကျွန်ုပ်တို့သည် directory တွင်ဖိုင်အမည်များအားလုံးကိုရယူရန် scandir () function ကိုသုံးနိုင်သည်။

 $files = scandir('path/to/your/directory');

ဤကုဒ်သည် directory ရှိဖိုင်များနှင့် subdirectories အားလုံး၏အမည်များပါ 0 င်သည့်ခင်းကျင်းမှုကိုပြန်လည်ရောက်ရှိစေသည်။ သတိပြုရန် သတိပြုပါ () သည် အထူးလမ်းညွှန်နှစ်ခုကိုပြန်ပေးလိမ့်မည်ကိုသတိပြုပါ နှင့် .. ပုံမှန်အားဖြင့်ကျနော်တို့သူတို့ကို filter လုပ်ဖို့လိုအပ်ကောင်းလိုအပ်နိုင်ပါသည်။

အဆင့် 2 - Natsort ကို သုံး. ဖိုင်အမည်များကိုစီပါ

Filename Array ကိုကျွန်ုပ်တို့ရရှိပြီးသည်နှင့် Natsort () function ကို sort လုပ်ရန် Natsort () function ကိုခေါ်နိုင်သည်။

 natsort($files);

Natsort () သည် ဖိုင်အမည်များကိုသဘာဝကျကျခွဲထုတ်မည်ဖြစ်ပြီး "file1.txt" သည် "file10.txt" ၏ရှေ့တွင်ရှိသည်။

အဆင့် 3. sorted file name ကိုပြပါ

Sorting ပြီးစီးပြီးနောက် foreach loop မှတစ်ဆင့် sorted file name ကို output လုပ်နိုင်သည်။

 foreach ($files as $file) {
    echo $file . "\n";
}

ဤနည်းအားဖြင့်သင်သည်သဘာဝအမိန့်တွင်စီစဉ်ထားသည့်ဖိုင်အမည်များစာရင်းကိုသင်တွေ့နိုင်သည်။


နမူနာကုဒ်

အထက်ပါအဆင့်များကိုပေါင်းစပ်ပြီး, နောက်ဆုံးကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

 <?php

// directory ထဲတွင်ဖိုင်အားလုံးကိုရယူပါ
$files = scandir('path/to/your/directory');

// ရေွှ့ . နှင့် .. မာတိကာ
$files = array_diff($files, array('.', '..'));

// အသုံးပြု natsort ဖိုင်အမည်များကိုစီပါ
natsort($files);

// sorted file name output ကို output
foreach ($files as $file) {
    echo $file . "\n";
}

?>

ထုတ်လုပ်မှုဥပမာ

directory တွင်အောက်ပါဖိုင်များရှိသည်ဆိုပါစို့။

 file1.txt
file10.txt
file2.txt
file20.txt

Natsort () ကိုခွဲထုတ်ပြီးနောက် output ကိုဖြစ်လိမ့်မည် -

 file1.txt
file2.txt
file10.txt
file20.txt

Natsort နှင့် Natsort ()

  • Natsort () function သည်မူရင်းခင်းကျင်းမှုကိုတိုက်ရိုက်ပြုပြင်သည်။ ထို့ကြောင့်မခေါ်မီခင်းကျင်းမှုအသစ်ကိုတန်ဖိုးရှိရန်မလိုအပ်ပါ။

  • အကယ်. သင်သည်ပြောင်းပြန် sorting လိုအပ်ပါက Natsort () ကို သုံး. ၎င်းကို sort လုပ်ရန်, ထို့နောက် Array_Reverse () function ကိုသုံးနိုင်သည်။

  • Natsort () သည်စာလုံးအကြီးအသေးအရေးမကြီးပါ။ ဖိုင်အမည်တွင်စာလုံးအကြီးများပါ 0 င်ပါကရလဒ်အမျိုးအစားကိုအကျိုးသက်ရောက်နိုင်သည်။ သင်အမှု sorting ကိုလျစ်လျူရှုရန်လိုအပ်ပါက Natsort () မခေါ်မီဖိုင်အမည်ကို unified စာလုံးအသေးသို့ပြောင်းလဲနိုင်သည်။

ဥပမာအားဖြင့်:

 // ဖိုင်အမည်ကိုစာလုံးအသေးအဖြစ်ပြောင်းပါ
$files = array_map('strtolower', $files);
natsort($files);