အသုံးပြုသူအတွေ့အကြုံတိုးတက်စေရန်ဘာသာစကားမျိုးစုံ 0 ဘ်ဆိုဒ်များတွင်သဘာဝ sorting ကိုသဘာဝအရအမျိုးအစားခွဲခြားရန် strnatcmp ကိုအသုံးပြုနည်း။
ဘာသာစကားမျိုးစုံဝက်ဘ်ဆိုက်များကိုတည်ဆောက်ရာတွင်အသုံးပြုသူအတွေ့အကြုံသည်အရေးပါသည်။ 0 က်ဘ်ဆိုက်ကိုဖော်ရွေပြီးထိုးထွင်းသိမြင်နိုင်ရန်အတွက်အထူးသဖြင့်စာရင်းများ (သို့) လမ်းညွှန်များကိုပြသသောအခါ, ထုံးတမ်းစဉ်လာအဘိဓာ္တန်းမှုအရအမှာစာသည်အကြောင်းအရာအချို့သည်အထူးသဖြင့်ရောနှောထားသောနံပါတ်များနှင့်အက္ခရာများပါ 0 င်သည့်အခါအထူးသဖြင့်မလိုနိုင်ပါ။ ဤသို့ပြုလုပ်ရန် "သဘာဝ sorting" အတွက် strnatcmp function ကိုအသုံးပြုခြင်းသည်အကောင်းဆုံးသောဖြေရှင်းနည်းဖြစ်လာသည်။
National Sorting ဆိုတဲ့နာမည်ကအကြံပြုထားတဲ့အနေဖြင့်, ဥပမာအားဖြင့်, "Apple2" နှင့် "Apple10" နှင့် "Apple10" အတွက် strings အတွက် "Apple10" ကို Sorting သည်စာလုံးဇာတ်ကောင်နှင့်နှိုင်းယှဉ်ပါက "Apple10" ဖြစ်သည်။ သို့သော်လူသားများသည်များသောအားဖြင့် "Apple2" သည် "Apple10" မတိုင်မီဖြစ်သင့်သည်ဟုထင်ကြသည်။ သဘာဝ sorting သည်နံပါတ်များအရွယ်အစားနှင့်အနေအထားကိုထည့်သွင်းစဉ်းစားလိမ့်မည်။
strnatcmp သည် PHP တွင်သဘာဝ sorting ကိုအကောင်အထည်ဖော်နိုင်သည့် PHP တွင် string နှိုင်းယှဉ်ခြင်း function တစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်မှုသည် strcmp နှင့်ဆင်တူသော်လည်း, အထူးသဖြင့် strnatcmp ကြိုးနှစ်ချောင်းနှင့်နှိုင်းယှဉ်လျှင်၎င်းသည်နံပါတ်များကိုအက်ခရာဖြင့်နှိုင်းယှဉ်ခြင်းထက်၎င်းကိုတစ်ခုလုံးအဖြစ်သတ်မှတ်သည်။
PHP တွင် strnatcmp အသုံးပြုမှုသည်အလွန်ရိုးရှင်းပါသည်။ Syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
<span><span><span class="hljs-title function_ invoke__">strnatcmp</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$string1</span></span><span>, </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$string2</span></span><span>): </span><span><span class="hljs-keyword">int</span></span><span>
</span></span>$ string1 : ပထမ string ကို
$ string2 : ဒုတိယ string ကို
Value ကိုပြန်သွားပါ
0 ထက်နည်းသည် - $ string1 သည် $ string2 ထက်
0 ထက်ကြီးသည် - $ string1 ကို $ string2 ပြီးနောက်အဆင့်သတ်မှတ်ထားလျှင်
0: ကြိုးနှစ်ချောင်းနှင့်ညီမျှလျှင်
ကျွန်ုပ်တို့တွင်ဘာသာစကားအမျိုးမျိုးဖြင့်ဆောင်းပါးခေါင်းစဉ်များနှင့်ဘာသာစကားမျိုးစုံဝက်ဘ်ဆိုက်ရှိသည်ဆိုပါစို့။ ဤခေါင်းစဉ်စာရင်းကိုသဘာဝအမိန့်တွင်ကျွန်ုပ်တို့တင်ပြလိုပါသည်။ strnatcmp , PHP မတိုင်မီ PHP Default Sorting သည်လုံးဝအလိုလိုသိသောနံပါတ်များနှင့်အက္ခရာများကိုပေါင်းစပ်ထားသောအစီအစဉ်များကိုဖြစ်ပေါ်စေနိုင်သည်။ strnatcmp နှင့်အတူကျွန်ုပ်တို့သည်ကိန်းဂဏန်းအစိတ်အပိုင်းများကိုလူ့နားလည်မှုဖြင့်ခွဲခြားထားကြောင်းသေချာစေနိုင်သည်။
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// ဤသည်ကျွန်ုပ်တို့၏ဝက်ဘ်ဆိုက်ပေါ်တွင်ခေါင်းစဉ်ခင်းကျင်းဖြစ်ကြောင်းယူဆ,ကွဲပြားခြားနားသောနံပါတ်များပါရှိသည်</span></span><span>
</span><span><span class="hljs-variable">$titles</span></span><span> = [
</span><span><span class="hljs-string">"Article 10: PHP Introduction"</span></span><span>,
</span><span><span class="hljs-string">"Article 2: HTML Basics"</span></span><span>,
</span><span><span class="hljs-string">"Article 1: CSS Fundamentals"</span></span><span>,
</span><span><span class="hljs-string">"Article 11: JavaScript Essentials"</span></span><span>,
</span><span><span class="hljs-string">"Article 3: Python for Beginners"</span></span><span>
];
</span><span><span class="hljs-comment">// အသုံးပြု uasort function ကိုပေါင်းစပ် strnatcmp သဘာဝကိုခေါင်းစဉ်အမိန့်</span></span><span>
</span><span><span class="hljs-title function_ invoke__">uasort</span></span><span>(</span><span><span class="hljs-variable">$titles</span></span><span>, </span><span><span class="hljs-string">'strnatcmp'</span></span><span>);
</span><span><span class="hljs-comment">// output ကို sorted ရလဒ်များ</span></span><span>
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$titles</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$title</span></span><span>) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$title</span></span><span> . </span><span><span class="hljs-string">"<br>"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>ခေါင်းစဉ်တစ်ခုစီ တွင် နံပါတ်များပါရှိသည်။
array sort ဖို့ uasort function ကိုသုံးပါ။ Uasort သည် ခင်းကျင်း၏သော့များကိုမပြောင်းလဲနိုင်ပါကသတ်မှတ်ထားသောနှိုင်း ယှဉ် ခြင်း function ကိုအလိုက်ခွဲထားသည်။
နောက်ဆုံးတွင် foreach foreach ကိုအသုံးပြုပါရလဒ်များကိုထုတ်ယူပါ။
ဥပမာ - sorted output ကိုသဘာဝအမိန့်စီစဉ်ပေးလိမ့်မည်။
<span><span><span class="hljs-selector-tag">Article</span></span><span> </span><span><span class="hljs-number">1</span></span><span>: </span><span><span class="hljs-selector-tag">CSS</span></span><span> </span><span><span class="hljs-selector-tag">Fundamentals</span></span><span>
</span><span><span class="hljs-selector-tag">Article</span></span><span> </span><span><span class="hljs-number">2</span></span><span>: </span><span><span class="hljs-selector-tag">HTML</span></span><span> </span><span><span class="hljs-selector-tag">Basics</span></span><span>
</span><span><span class="hljs-selector-tag">Article</span></span><span> </span><span><span class="hljs-number">3</span></span><span>: </span><span><span class="hljs-selector-tag">Python</span></span><span> </span><span><span class="hljs-selector-tag">for</span></span><span> </span><span><span class="hljs-selector-tag">Beginners</span></span><span>
</span><span><span class="hljs-selector-tag">Article</span></span><span> </span><span><span class="hljs-number">10</span></span><span>: </span><span><span class="hljs-selector-tag">PHP</span></span><span> </span><span><span class="hljs-selector-tag">Introduction</span></span><span>
</span><span><span class="hljs-selector-tag">Article</span></span><span> </span><span><span class="hljs-number">11</span></span><span>: </span><span><span class="hljs-selector-tag">JavaScript</span></span><span> </span><span><span class="hljs-selector-tag">Essentials</span></span><span>
</span></span>ဘာသာစကားမျိုးစုံဝက်ဘ်ဆိုက်များတွင်ခေါင်းစဉ်များမှာမတူညီသောဝေါဟာရများနှင့်နံပါတ်များကိုဘာသာစကားအမျိုးမျိုးဖြင့်ပါ 0 င်နိုင်သည်။ strnatcmp ကို အသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ဘာသာစကားများအားလုံးတွင်အကြောင်းအရာအားလုံးကိုသဘာဝအစဉ်အဆက်တွင်ကွဲပြားစေနိုင်ကြောင်းသေချာစေနိုင်သည်။ ဥပမာအားဖြင့် strnatcmp ကို အသုံးပြုသူမျှော်လင့်ထားသည့်အတိုင်းခွဲခြားနိုင်သည်။
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// ဤသည်မျိုးစုံဝက်ဘ်ဆိုက်အတွက်ခေါင်းစဉ်ခင်းကျင်းဖြစ်ပါတယ်ယူဆ</span></span><span>
</span><span><span class="hljs-variable">$titles</span></span><span> = [
</span><span><span class="hljs-string">"ဆောင်းပါး 2: PHPနိဒါန်း"</span></span><span>, </span><span><span class="hljs-comment">// တရုတ်</span></span><span>
</span><span><span class="hljs-string">"Article 10: Introduction to PHP"</span></span><span>, </span><span><span class="hljs-comment">// အင်္ဂလိပ်</span></span><span>
</span><span><span class="hljs-string">"Article 1: HTML Basics"</span></span><span>, </span><span><span class="hljs-comment">// အင်္ဂလိပ်</span></span><span>
</span><span><span class="hljs-string">"Article 3: Python for Beginners"</span></span><span>, </span><span><span class="hljs-comment">// အင်္ဂလိပ်</span></span><span>
</span><span><span class="hljs-string">"ဆောင်းပါး 1: CSSအောက်အခေြ"</span></span><span> </span><span><span class="hljs-comment">// တရုတ်</span></span><span>
];
</span><span><span class="hljs-comment">// အသုံးပြု uasort function ကိုပေါင်းစပ် strnatcmp သဘာဝကိုခေါင်းစဉ်အမိန့်</span></span><span>
</span><span><span class="hljs-title function_ invoke__">uasort</span></span><span>(</span><span><span class="hljs-variable">$titles</span></span><span>, </span><span><span class="hljs-string">'strnatcmp'</span></span><span>);
</span><span><span class="hljs-comment">// output ကို sorted ရလဒ်များ</span></span><span>
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$titles</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$title</span></span><span>) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$title</span></span><span> . </span><span><span class="hljs-string">"<br>"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span> <span><span><span class="hljs-attr">Article 1:</span></span><span> </span><span><span class="hljs-string">HTML</span></span><span> </span><span><span class="hljs-string">Basics</span></span><span>
</span><span><span class="hljs-attr">Article 3:</span></span><span> </span><span><span class="hljs-string">Python</span></span><span> </span><span><span class="hljs-string">for</span></span><span> </span><span><span class="hljs-string">Beginners</span></span><span>
</span><span><span class="hljs-attr">Article 10:</span></span><span> </span><span><span class="hljs-string">Introduction</span></span><span> </span><span><span class="hljs-string">to</span></span><span> </span><span><span class="hljs-string">PHP</span></span><span>
</span><span><span class="hljs-string">ဆောင်းပါး</span></span><span> </span><span><span class="hljs-attr">1:</span></span><span> </span><span><span class="hljs-string">CSSအောက်အခေြ</span></span><span>
</span><span><span class="hljs-string">ဆောင်းပါး</span></span><span> </span><span><span class="hljs-attr">2:</span></span><span> </span><span><span class="hljs-string">PHPနိဒါန်း</span></span><span>
</span></span>Intuitive sorting ရလဒ်များ - အသုံးပြုသူများသည် "Apple2" ရှေ့တွင် "Apple10" အဆင့်သတ်မှတ်ချက်ကို "Apple2" ၏ရှေ့မှောက်၌မတွေ့လိုပါ။ stranatcmp သည် ဤအခြေအနေကိုရှောင်ရှားနိုင်ပြီးကိန်းဂဏန်းများကိုသဘာဝအပိုင်းအစများပြုလုပ်နိုင်သည်။
0 ဘ်ဆိုဒ်ဖော်ရွေမှုကိုတိုးတက်အောင်လုပ်ခြင်း - ဘာသာစကားမျိုးစုံ 0 ဘ်ဆိုဒ်များအတွက်အထူးသဖြင့်ရောနှောထားသောနံပါတ်များနှင့်စာသားပါ 0 င်သောအကြောင်းအရာများသည်တရုတ်,
ဖွံ့ဖြိုးရေးလုပ်ငန်းစဉ်ကိုရိုးရှင်းအောင်ပြုလုပ်ခြင်း - ဖွံ့ဖြိုးရေးလုပ်ငန်းစဉ်အတွင်း strnatcmp ကို အသုံးပြုခြင်းသည်ရှုပ်ထွေးသောရှုပ်ထွေးမှုများကိုကိုယ်တိုင်ကိုယ်ကျရေးသားခြင်း,
StrnatcMP သည် PHP developer များအား PHP developer များဘာသာစကားမျိုးစုံ 0 ဘ်ဆိုဒ်များတွင်သဘာဝအစုံအလင်အလုံးစုံမျိုးစုံဖြင့်ဖွဲ့စည်းရန်ကူညီနိုင်သည့်အလွန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်မှုမှတစ်ဆင့် developer များကအကြောင်းအရာကိုစာရင်းပြုစုခြင်း, လမ်းညွှန်သို့မဟုတ်ဘာသာစကားမျိုးစုံခေါင်းစဉ်များ၌ပါ 0 င်သောသုံးစွဲသူ၏ထိုးထွင်းသိမြင်မှုများအရသုံးစွဲသူများကိုသေချာစွာဖော်ပြရန်သေချာစေနိုင်သည်။