ဖိုင် extension များနှင့်၎င်းတို့ကိုမည်သို့ဖြေရှင်းရန်မည်သို့ပြုလုပ်သောအခါ strnatcasecmp function ကိုကြုံတွေ့ရသောဘုံပြ problems နာများ
PHP တွင် Strnatcasecmp () သည်အလွန်အသုံးဝင်သော string နှင့်နှိုင်းယှဉ်လျှင်နှိုင်းယှဉ်မှုများနှင့်အမှုအားလျစ်လျူရှုခြင်းကိုနှိုင်းယှဉ်သည်။ ဤလုပ်ဆောင်မှုသည်ဖြစ်နိုင်ချေများစွာတွင်အလွန်အသုံးဝင်သည်, အထူးသဖြင့်ဖိုင်များအစုတခုစီကိုစီရန်လိုသည်။ ဥပမာအားဖြင့်ကျွန်ုပ်တို့သည် Numeric အစိတ်အပိုင်းများပါ 0 င် သည့်ဖိုင်အမည်ဖြင့်စီရန်လိုသည်။
သို့သော်အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ကျွန်ုပ်တို့သည်ဖိုင်တိုးချဲ့မှုများကိုကိုင်တွယ်ဖြေရှင်းသည့်အခါပြ problems နာအချို့ကိုမကြာခဏကြုံတွေ့ရလေ့ရှိသည်။ ဤတွင်ကျွန်ုပ်တို့သည်ဤပြ problems နာများကိုအသေးစိတ်မိတ်ဆက်ပေးပြီးဖြေရှင်းနည်းများပေးလိမ့်မည်။
File extensions များဖြင့်ဖိုင်များကိုနှိုင်းယှဉ်ရန် strnatcasecmp () function ကိုအသုံးပြုသောအခါကျွန်ုပ်တို့သည်ရှုပ်ထွေးသောအပြုအမူအချို့ကိုကြုံတွေ့ရနိုင်သည်။ ဘာကြောင့်လဲဆိုတော့ဖိုင် extension တွေဟာ file name ရဲ့အဆုံးမှာ file name ရဲ့အဆုံးမှာဖြစ်ပြီး strnatcasecmp () ဟာ တိုးချဲ့တဲ့အခါကွဲပြားခြားနားတဲ့ extensions တွေကိုကွဲပြားစေမှာပါ။
$file1 = 'image2.jpg';
$file2 = 'image10.jpg';
echo strnatcasecmp($file1, $file2);
ဤကုဒ်ကိုသင် run မည်ဆိုလျှင် output သည်သင်မျှော်လင့်ထားသည့်အရာသည် " image2.jpg သည် image10.jpg ရှေ့တွင်ရှိသင့်သည်။ ၎င်းသည်အထူးသဖြင့်ဖိုင်အမည်တွင်နံပါတ်များပါ 0 င်သည့် strnatcasecmp () ၏ collation များမှဤသည်အဓိကအားဖြင့်ဖြစ်ပေါ်စေသည်။ သဘာဝ sorting သည်ဂဏန်းအစိတ်အပိုင်းများကိုသီးခြားဇာတ်ကောင် အစီအစဉ်များ ထက် "နံပါတ်များ" ဟုယူမှတ်သည် ။
ဖိုင် extension များကိုမှန်ကန်စွာလုပ်ဆောင်ခြင်းနှင့်အထက်ပါဥပမာများကဲ့သို့သောပြ problems နာများကိုရှောင်ရှားရန်သေချာစေရန်,
Pathinfo () function သည် function ကိုဖြည့်ဆည်းပေးရန်ကျွန်ုပ်တို့အားဖြည့်ဆည်းပေးနိုင်ရန်အထောက်အကူပြုနိုင်သည်။ ကျွန်ုပ်တို့သည်ဖိုင်အမည်၏အဓိကအပိုင်းကိုထုတ်ယူပြီး၎င်းကိုနှိုင်းယှဉ်နိုင်သည်။
$file1 = 'image2.jpg';
$file2 = 'image10.jpg';
// ဖိုင်၏အဓိကအပိုင်းကိုထုတ်ယူပါ(extensions များကိုဖယ်ထုတ်ပါ)
$basename1 = pathinfo($file1, PATHINFO_FILENAME);
$basename2 = pathinfo($file2, PATHINFO_FILENAME);
// ဖိုင်၏အဓိကအပိုင်းကိုနှိုင်းယှဉ်ကြည့်ပါ
echo strnatcasecmp($basename1, $basename2);
ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်ဖိုင်အမည်၏အဓိကအပိုင်းကိုသာနှိုင်းယှဉ်ပြီးမှန်ကန်သော sorting အောင်မြင်ရန်အတွက် extension မှသက်ရောက်မှုမရှိပါ။
ဖိုင်အမည်များနှင့် extensions နှစ်ခုလုံးကိုစီရန်လိုအပ်ပါကတိုးချဲ့ခြင်းသည်သဘာဝ sorting ကို 0 င်ရောက်စွက်ဖက်ခြင်းမပြုရန်သေချာစေပါက,
$file1 = 'image2.jpg';
$file2 = 'image10.jpg';
// သီးခြား filenames နှင့် extension များ
$info1 = pathinfo($file1);
$info2 = pathinfo($file2);
// 首先ဖိုင်၏အဓိကအပိုင်းကိုနှိုင်းယှဉ်ကြည့်ပါ
$comparison = strnatcasecmp($info1['filename'], $info2['filename']);
if ($comparison == 0) {
// အဓိကခန္ဓာကိုယ်တစ်စိတ်တစ်ပိုင်းအတူတူပင်လျှင်,တိုးချဲ့မှုများနှိုင်းယှဉ်
$comparison = strnatcasecmp($info1['extension'], $info2['extension']);
}
echo $comparison;
ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည် (extension) ၏အဓိကအပိုင်းကိုသဘာဝအမိန့်တွင်ဖော်ပြထားသည့်အဓိကအပိုင်းကို ဦး ဆုံးနှိုင်းယှဉ်။ အဓိကအပိုင်းသည်အတူတူပင်ဖြစ်ပါက,
အမှုမသိသော strnatcasecmp () strnatcasecmp () အမှုအားလျစ်လျူရှုခြင်း, ဒါကြောင့်ဖိုင်အမည်များကိုကိုင်တွယ်သောအခါ, အက္ခရာများအတွက်စိုးရိမ်စရာမလိုပါ။ အကယ်. သင်သည်အမှုအသေးများ sensitivity လိုအပ်ပါက strnatcmp () ကို သုံးနိုင်သည်။
နံပါတ် sorting: strnatcasecmp () သည် နံပါတ်များကိုနံပါတ်အရွယ်အစားဖြင့်ခွဲထားပြီး၎င်းကိုတစ် ဦး ချင်းစီအားဖြင့်တစ် ဦး ချင်းစီအားဖြင့်တစ်ပြိုင်နက်နှိုင်းယှဉ်ရုံသက်သက်ဖြစ်သည်။ ၎င်းသည်ဖိုင်အမည်များရှိနံပါတ်များနှင့်ဖိုင်များအတွက်အထူးသဖြင့်အသုံးဝင်သည်။
ဖိုင် extension: အစောပိုင်းတွင်ဖော်ပြခဲ့သည့်အတိုင်း Strnatcasecmp () သည် scranscasecmp () သည် အသစ်သောဖိုင်ကိုသက်တမ်းတိုးခြင်းနှင့်မသက်ဆိုင်သောရလဒ်များနှင့်မကိုက်ညီသောရလဒ်များကိုထုတ်လုပ်နိုင်သည်။
strnatcasecmp () သည်အစွမ်းထက်သော string နှိုင်းယှဉ်ကိရိယာတစ်ခုဖြစ်သည်, သို့သော်ကျွန်ုပ်တို့သည်ဖိုင် extension များ၌ပါ 0 င်သည့်အခါကျွန်ုပ်တို့သည်အချို့သော sorting ပြ problems နာအချို့ကိုကြုံတွေ့ရနိုင်သည်။ Pathinfo () function ကို အသုံးပြု. ဖိုင်အမည်များနှင့် extensions များကိုသီးခြားခွဲထုတ်ခြင်းသို့မဟုတ်လက်ဖြင့်ချိတ်ဆက်ထားသောအစိတ်အပိုင်းများကိုခွဲခြားရန်သို့မဟုတ်လက်ဖြင့်ဆန့်ကျင်။ ကျွန်ုပ်တို့သည်ဤပြ problems နာများကိုရှောင်ရှားနိုင်ပြီးရလဒ်အမျိုးမျိုးကိုဖြေရှင်းနိုင်သည်။
URL အပိုင်းတွင် code တွင်ပါ 0 င ် ပါက,
$url = 'https://example.com/file.jpg';
// ဒိုမိန်းအမည်ကိုအစားထိုးပါ
$url = str_replace('example.com', 'gitbox.net', $url);