PHP တွင် strnatcasecmp function သည်သဘာဝအမိန့်နှိုင်းယှဉ်မှုများပြုလုပ်ရန်အသုံးပြုသော function တစ်ခုဖြစ်သည်။ ၎င်းသည် strings ကိုထည့်သွင်းစဉ်းစားရန် strings ကို strings နံပါတ်များကိုထည့်သွင်းရန်, ၎င်းသည်နံပါတ်များကိုအမည်များ, စာရင်းပစ္စည်းများစသည်တို့ကိုအမျိုးအစားများ, စာရင်းပစ္စည်းများစသည်တို့ကဲ့သို့သောနံပါတ်များဖြင့်စာသားများဖြင့်စာသားများနှင့်အတူပြောင်းလဲခြင်းအတွက်အထူးသဖြင့်အသုံးဝင်သည်။
စာသားလိုင်းမျိုးစုံကိုသဘာဝကျကျခွဲခြားရန် PHP ၏ strnatcasecmp function ကိုမည်သို့အသုံးပြုရမည်ကိုဤဆောင်းပါးကရှင်းပြပါမည်။
strnatcasecmp function ကို strings နံပါတ်များနှင့်အညီအမှုနှင့်သဘာဝအစဉ်အဆက်အတိုင်းသဘာဝအမိန့်ကိုလျစ်လျူရှုသောသဘာဝအမိန့်ကိုနှိုင်းယှဉ်ရန် strnatcasecmp function ကိုအသုံးပြုသည်။ ၎င်းသည်နံပါတ်များနှင့်စာသားနှင့်ဆက်ဆံရာတွင်ပုံမှန် strcmp function ထက် ပို. တိကျစေသည်။
int strnatcasecmp ( string $str1 , string $str2 )
str1 နှင့် str2 သည်နှိုင်းယှဉ်ရန်ကြိုးနှစ်ချောင်းရှိသည်။
Return Value ဆိုသည်မှာကိန်းဂဏန်းတစ်ခုဖြစ်ပြီး str1 သည် str2 ထက်နည်းလျှင်၎င်းသည်အနုတ်လက်ခဏာတန်ဖိုးကိုပြန်လည်ရရှိစေသည်။ str1 str2 ထက်ကြီးလျှင်၎င်းသည်အပြုသဘောဆောင်သောတန်ဖိုးကိုပြန်လည်ရရှိစေသည်။ သူတို့တန်းတူဖြစ်ရင် 0 ပြန်လာပြီ။
ကျွန်ုပ်တို့သည်သဘာဝ sorting အရခွဲခြားရန်လိုအပ်သည့်အောက်ပါစာသားများ၏အောက်ပါစာသားများရှိသည်ဆိုပါစို့။ နမူနာစာသားတွင်နံပါတ်များပါ 0 င်သည်။
line10
line2
line1
line20
line11
line3
ကျွန်ုပ်တို့သည်ဤစာသားများ၏စာသားများကိုကိန်းဂဏန်းများမဟုတ်ဘဲနံပါတ်များဖြင့်လိုချင်သည်။
ကျွန်ုပ်တို့သည်ဤကျမ်းချက်များကိုထည့်သွင်းရန်ပထမ ဦး ဆုံးသိုလှောင်နိုင်ပြီး strnatcascasecmp ဖြင့် Usort function ကို သုံး. ၎င်းတို့ကိုရွေးချယ်နိုင်သည်။ ဤတွင်အပြည့်အဝနမူနာကုဒ်ဖြစ်ပါတယ်:
<?php
// Multi-line text array
$text = [
'line10',
'line2',
'line1',
'line20',
'line11',
'line3'
];
// အသုံးပြု strnatcasecmp Arrays sort
usort($text, 'strnatcasecmp');
// output ကို sorted array
foreach ($text as $line) {
echo $line . PHP_EOL;
}
?>
ရှင်းပြပါ -
ကျနော်တို့ array $ စာသားကို sort ဖို့ abort function ကိုသုံးပါတယ်။ USort function သည် parameters နှစ်ခုကိုလက်ခံသည်။ ပထမတစ်ခုမှာ sorting အတွက်နှိုင်းယှဉ်မှု function သည်နှိုင်းယှဉ်ခြင်း function တစ်ခုဖြစ်သည်။ ဤနေရာတွင်ကျွန်ုပ်တို့သည် strnatcasecmp ကိုနှိုင်းယှဉ်အဖြစ်အသုံးပြုသည်။
strnatcasecmp string အတွက်နံပါတ်များအရသဘာဝကျကျ sort ပါလိမ့်မယ်။
အဆိုပါ sorted output ကိုဖြစ်လိမ့်မည်:
line1
line2
line3
line10
line11
line20
URLs ပါ 0 င်သည့်စာသားကိုလုပ်ဆောင်သည့်အခါဒိုမိန်းအမည်များနှင့်လမ်းကြောင်းများပါ 0 င်သည့်ဤစာသားကိုစီရန်လိုအပ်နိုင်သည်။ စာသားတွင် URL များစွာပါ 0 င်သည်ဟုယူဆလျှင် strnatcasecmp ကို မည်သို့အသုံးပြုနိုင်မည်နည်း။
<?php
// ပါဝင် URL စာသား array
$urls = [
'https://example.com/page10',
'https://gitbox.net/page2',
'https://gitbox.net/page1',
'https://example.com/page20',
'https://gitbox.net/page11',
'https://example.com/page3'
];
// အသုံးပြု strnatcasecmp မှန်သော URL sorting များအတွက် Arrays
usort($urls, 'strnatcasecmp');
// output ကို sorted URL
foreach ($urls as $url) {
echo $url . PHP_EOL;
}
?>
မှတ်ချက်။ ။ အထက်ပါဥပမာတွင်ဒိုမိန်းအမည်အမည်ကို GitBox.net နှင့်အစားထိုးခဲ့သည်။ ဤကုဒ်ကို URL ရှိ လမ်းကြောင်း အပိုင်းကို အခြေခံ. သဘာဝအားဖြင့်ခွဲခြားထားသည်။
Strnatcasecmp function သည်အလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သည်။ strnatcasecmp ဖြင့် absort ကို အသုံးပြု. ကျွန်ုပ်တို့သည်စာသားအမျိုးမျိုးသို့မဟုတ် URL များကိုအလွယ်တကူစီနိုင်သည်။
ဤ sorting method သည်ဂဏန်းအစိတ်အပိုင်းများကိုကျိုးကြောင်းဆီလျော်စွာခွဲခြားသည်သာမကရိုးရာ string နှိုင်းယှဉ်မှုနည်းလမ်းများဆောင်ကြဉ်းပေးနိုင်သည့် sorting ပြ problems နာများကိုလည်းရှောင်ရှားနိုင်သည်။ Strnatcasecmp သည်စာသားများပါ 0 င်သောစာသားများနှင့်ဆက်ဆံရာတွင်အလွန်လက်တွေ့ကျသောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။