PHP တွင် Krsort () function ကို function ကိုသော့ချက်၏ပြောင်းပြန်အမိန့်ကို sort လုပ်ရန်အသုံးပြုသည်။ ဒီ function ကိုတန်ဖိုး၏အရွယ်အစားမခွဲခြားဘဲသော့များကခွဲထုတ်ထားသည်။ ထို့ကြောင့်၎င်းသည်များသောအားဖြင့်ကြီးမားသောမှသေးငယ်သောမှသော့များအနေဖြင့် Associative ခင်းကျင်းမှုကိုစီစဉ်လေ့ရှိသည်။ သို့သော် Krsort () function ကိုအသုံးပြုသောအခါကိန်းဂဏန်းများ၏သော့များကိုကိုင်တွယ်သောအခါသင်လိုက်လျောညီထွေကိစ္စများကြုံတွေ့ရနိုင်သည်။ ဤဆောင်းပါးသည်ဤပြ issues နာများကိုလေ့လာပြီးမည်သို့ဖြေရှင်းရမည်ကိုလေ့လာလိမ့်မည်။
Array တွင်ဂဏန်းသော့များနှင့် strings keys များပါ 0 င်သည့်အခါ Krsort () သည် မျှော်လင့်ထားသည့်အတိုင်းအလိုလိုသိခြင်းမရှိပါ။ Krsort () function သည်သော့ချက်၏တန်ဖိုးကိုဆက်လက်လုပ်ဆောင်ရန်ကြိုးစားသော်လည်း Numeric Keys ကိုထုတ်ယူသည့်အခါ PHP သည်ဤကိန်းဂဏန်းသော့များကို this downeric keys ကို string transies သို့ပြောင်းရွှေ့နိုင်သည်။
ဥပမာအားဖြင့်အောက်ပါခင်းကျင်းမှုသည်ဂဏန်းသော့နှင့် strings သော့များပါ 0 င်သည်။
<span><span><span class="hljs-variable">$arr</span></span><span> = [
</span><span><span class="hljs-number">10</span></span><span> => </span><span><span class="hljs-string">'apple'</span></span><span>,
</span><span><span class="hljs-number">2</span></span><span> => </span><span><span class="hljs-string">'banana'</span></span><span>,
</span><span><span class="hljs-number">30</span></span><span> => </span><span><span class="hljs-string">'cherry'</span></span><span>,
</span><span><span class="hljs-string">'10'</span></span><span> => </span><span><span class="hljs-string">'date'</span></span><span>
];
</span><span><span class="hljs-title function_ invoke__">krsort</span></span><span>(</span><span><span class="hljs-variable">$arr</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$arr</span></span><span>);
</span></span>
မျှော်လင့်ထားသည့်ရလဒ်များ
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[</span><span><span class="hljs-number">30</span></span><span>] => cherry
[</span><span><span class="hljs-number">10</span></span><span>] => apple
[</span><span><span class="hljs-number">10</span></span><span>] => date
[</span><span><span class="hljs-number">2</span></span><span>] => banana
)
</span></span>
အမှန်တကယ်ရလဒ်များ -
<span><span>Array
(
[</span><span><span class="hljs-meta">10</span></span><span>] => date
[</span><span><span class="hljs-meta">10</span></span><span>] => apple
[</span><span><span class="hljs-meta">30</span></span><span>] => cherry
[</span><span><span class="hljs-meta">2</span></span><span>] => banana
)
</span></span>
အထက်ပါကုဒ်နံပါတ် (10) ခု နှင့် '10' သည် krsort (10 ) ကို Krsort () ကို sorting လုပ်သည့်အခါတန်းတူသော့များအဖြစ်သတ်မှတ်သည်။ ဘာဖြစ်လို့လဲဆိုတော့ PHP မှာကိန်းဂဏန်းသော့တွေနဲ့ strings keys တွေကိုနှိုင်းယှဉ်တဲ့အခါ PHP ဟာအမျိုးအစားအပြောင်းအလဲတွေကိုအလိုအလျောက်လုပ်ဆောင်နိုင်လို့ပါ။
PHP sorts sorts arrays ဖြစ်သည့်အခါ၎င်းသည်ကိန်းဂဏန်းအမျိုးအစားများ၏သော့များကိုကြိုးကြိုးများသို့အလိုအလျောက်ပြောင်းလဲနိုင်သည်။ ဤပြောင်းလဲခြင်းအမျိုးအစားသည် sorting အမိန့်ကိုအကျိုးသက်ရောက်နိုင်သည်။ Krsort () ကို အသုံးပြုသောအခါဂဏန်းနှင့် strings သော့များပါ 0 င်သည့် arrays များကိုစီရန်အဘယ်ကြောင့်ဆိုသော်ရလဒ်များကိုဤသွင်ပြင်အမျိုးအစားပြောင်းလဲခြင်းကြောင့်အကျိုးသက်ရောက်နိုင်သည်။
ဥပမာအားဖြင့်အောက်ပါခင်းကျင်းမှုကိုစဉ်းစားပါ။
<span><span><span class="hljs-variable">$arr</span></span><span> = [
</span><span><span class="hljs-number">0</span></span><span> => </span><span><span class="hljs-string">'zero'</span></span><span>,
</span><span><span class="hljs-number">2</span></span><span> => </span><span><span class="hljs-string">'two'</span></span><span>,
</span><span><span class="hljs-number">1</span></span><span> => </span><span><span class="hljs-string">'one'</span></span><span>,
</span><span><span class="hljs-number">10</span></span><span> => </span><span><span class="hljs-string">'ten'</span></span><span>
];
</span><span><span class="hljs-title function_ invoke__">krsort</span></span><span>(</span><span><span class="hljs-variable">$arr</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$arr</span></span><span>);
</span></span>
ဒီခင်းကျင်းမှုမှာသော့ 10 ဟာဂဏန်းအမျိုးအစားတစ်ခုပါ။ အခြားသော့တွေကသေးငယ်တဲ့နံပါတ်တွေပါ။ krsort () ကို သော့ချက်များ၏ပြောင်းပြန်အမိန့်တွင်ခွဲထားသင့်သော်လည်းရလဒ်သည် Numeric Keys ကို PHP ၏ပြောင်းလဲမှုကြောင့်ရလဒ်များကြောင့်ရလဒ်ကိုမျှော်မှန်းထားသည်။
Krsort () သည် ဂဏန်းအမျိုးအစားသော့များကိုကိုင်တွယ်သောအခါပုံဖော်နိုင်သည့်သဟဇာတဖြစ်နေသောပြ issues နာများကိုဖြေရှင်းရန် developer များသည်အောက်ပါနည်းလမ်းများကိုယူနိုင်သည်။
ခင်းကျင်းရေး၏အဓိကအမျိုးအစားများမှာတသမတ်တည်းရှိကြောင်းသေချာပါစေ ။ အကယ်. ခင်းကျင်းနေသောသော့များသည်ဂဏန်းအမျိုးအစားများဖြစ်ရမည်ဆိုပါစို့။ ၎င်းကိုသရုပ်ဆောင်ခြင်းဖြင့်ကာကွယ်နိုင်သည်။
<span><span><span class="hljs-variable">$arr</span></span><span> = [
(</span><span><span class="hljs-keyword">int</span></span><span>)</span><span><span class="hljs-number">10</span></span><span> => </span><span><span class="hljs-string">'apple'</span></span><span>,
(</span><span><span class="hljs-keyword">int</span></span><span>)</span><span><span class="hljs-number">2</span></span><span> => </span><span><span class="hljs-string">'banana'</span></span><span>,
(</span><span><span class="hljs-keyword">int</span></span><span>)</span><span><span class="hljs-number">30</span></span><span> => </span><span><span class="hljs-string">'cherry'</span></span><span>
];
</span><span><span class="hljs-title function_ invoke__">krsort</span></span><span>(</span><span><span class="hljs-variable">$arr</span></span><span>);
</span></span>
စိတ်ကြိုက် sorting function များကိုသုံးပါ ။ အထူးကိစ္စများတွင်ရောနှောထားသောသော့အမျိုးအစားများကိုမရှောင်ရှားနိုင်ပါကသော့အမျိုးအစားများကိုကိုင်တွယ်ရန်စိတ်ကြိုက်နှိုင်းယှဉ်မှု function ကိုရေးနိုင်သည်။ Krsort အစား Uksort () ကိုအသုံးပြုခြင်းသည်နှိုင်းယှဉ်ခြင်း function ကိုစိတ်ကြိုက်ပြုပြင်ခြင်းအားဖြင့်ပိုမိုတိကျသော sorting ယုတ္တိဗေဒကိုသင်အကောင်အထည်ဖော်နိုင်သည်။
<span><span><span class="hljs-title function_ invoke__">uksort</span></span><span>(</span><span><span class="hljs-variable">$arr</span></span><span>, function(</span><span><span class="hljs-variable">$a</span></span><span>, </span><span><span class="hljs-variable">$b</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-variable">$b</span></span><span> - </span><span><span class="hljs-variable">$a</span></span><span>; </span><span><span class="hljs-comment">// ကိန်းဂဏန်းအရွယ်အစား၏အမိန့်အားဖြင့် sort</span></span><span>
});
</span></span>
ကိန်းဂဏန်းများအလိုက်အားကိုးခြင်းကိုရှောင်ပါ ။ အကယ်. သင်သည်ဂဏန်းနံပါတ်များကိုသတ်သတ်မှတ်မှတ်အမိန့်မလိုအပ်ပါက,
SUCKING မတိုင်မီအဓိကအမျိုးအစားများကိုပြောင်းလဲခြင်း - PHP တွင်အမျိုးအစားပြောင်းလဲခြင်းပြ problems နာများကိုရှောင်ရှားနိုင်သည့် krsort () တွင် သော့ချက်စာလုံးများကို trings အမျိုးအစားများသို့ပြောင်းပါ။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$arr</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_map</span></span><span>(function(</span><span><span class="hljs-variable">$key</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> (</span><span><span class="hljs-keyword">string</span></span><span>)</span><span><span class="hljs-variable">$key</span></span><span>; </span><span><span class="hljs-comment">// တစ် ဦး string ကိုမှသော့ကိုအတင်း</span></span><span>
}, </span><span><span class="hljs-variable">$arr</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">krsort</span></span><span>(</span><span><span class="hljs-variable">$arr</span></span><span>);
</span></span>
Krsort () function ကို သုံး. ဂဏန်းသော့များပါ 0 င်သော array များတပ်ဆင်သောအခါ developer များကအဓိကအားဖြင့်ကွဲပြားသောပြ issues နာအချို့ကိုကြုံတွေ့ရနိုင်သည်။ ဤပြ problems နာများကိုရှောင်ရှားရန် developer များကခင်းကျင်းမှု၏အဓိကအကြောင်းအရာများသည်တသမတ်တည်းဖြစ်ကြောင်းသေချာစေရန်, ဤအစီအမံများမှတဆင့် array sorting ၏ရလဒ်များကိုပိုမိုကောင်းမွန်သောထိန်းချုပ်ထားသောထိန်းချုပ်မှုများကိုရှောင်ရှားနိုင်ပြီးအလားအလာအမှားများကိုရှောင်ရှားနိုင်သည်။