Krsort ၏တရားဝင်အဓိပ္ပာယ်ဖွင့်ဆိုချက် -
bool krsort ( array &$array [, int $sort_flags = SORT_REGULAR ] )
function: restsely ကို retssely key name အားဖြင့် sortsely sort နှင့်သော့အမည်ကိုထိန်းသိမ်းထားသည်။
ပြန်လာတန်ဖိုး - sorting အောင်မြင်မှုရှိမရှိ။
မှတ်ချက် - အဓိကအကြောင်းရင်းများမှာတူညီနေဆဲဖြစ်သော်လည်း element များ၏အစဉ်အဆက်ကသော့ချက်အမည်များကိုပြောင်းပြန်နိုင်ရန်အတွက်စီစဉ်လိမ့်မည်။
ဥပမာအားဖြင့်:
$array = [
'b' => 2,
'a' => 1,
'c' => 3,
];
krsort($array);
print_r($array);
ထုတ်လုပ်မှု -
Array
(
[c] => 3
[b] => 2
[a] => 1
)
သင်မြင်နိုင်သည့်အတိုင်းအရေးပေါ်အခြေအနေကိုသော့ချက်အမည်များအရပြောင်းပြန်နိုင်ရန်အတွက်စီစဉ်ထားသည်။
အချို့ဖြစ်ရပ်များတွင်ကျွန်ုပ်တို့သည်တစ်စိတ်တစ်ပိုင်းကိုတစ်စိတ်တစ်ပိုင်းရွေးချယ်ခြင်းသို့မဟုတ်အချို့သောဒြပ်စင်များကိုခွဲထုတ်လိုသည်သို့မဟုတ်အချို့သော ဒြပ်စင်များကို ခွဲခြမ်းစိတ်ဖြာခြင်းကိုဆက်လက်ထိန်းသိမ်းထားဆဲဖြစ်သည်။
ထို့အပြင် Key Name အမျိုးအစားသည်စံသတ်မှတ်ချက်မပြည့်မီပါက (strings keys များနှင့်ရောနှောထားသောသော့များနှင့်ရောနှောထားသောသော့များ) ကိုမရရှိပါက Krsort သည် မျှော်လင့်ထားသည့်အတိုင်းပြုမူမည်မဟုတ်ပါ။ နောက်အချက်တစ်ခုမှာသင့်တွင်သင်၏ခင်းကျင်းမှုတွင်တူညီသောသော့ချက်အမည်ရှိပါက (PHP တွင်ရှားပါးသည်) သို့မဟုတ်သော့ချက်အမည်မှာတူညီသည်ဖြစ်စေ,
အကယ်. သင်သည် Elements အမှာစာများကိုတစ်စိတ်တစ်ပိုင်းထိန်းသိမ်းရန်လိုအပ်ပါကမူရင်းမှာယူမှုကိုပထမ ဦး စွာသိမ်းနိုင်သည်, ပြီးနောက်၎င်းကိုဤအမိန့်အရချိန်ညှိနိုင်သည်။
$array = [
'b' => 2,
'a' => 1,
'c' => 3,
];
// မူလအမိန့်ကိုသိမ်းပါ
$originalKeys = array_keys($array);
// ဉီးစီး krsort ရေှးချယ်
krsort($array);
// သငျသညျအချို့သောတိကျတဲ့အမိန့်ကိုစောင့်ရှောက်လိုလျှင်,မူရင်းအမိန့်အတွက်ပြန်လည်စီစဉ်
uksort($array, function($key1, $key2) use ($originalKeys) {
$pos1 = array_search($key1, $originalKeys);
$pos2 = array_search($key2, $originalKeys);
return $pos1 - $pos2;
});
print_r($array);
အထက်ဖော်ပြပါဥပမာတွင်ပထမ ဦး ဆုံး Krsort နှင့်နောက်ပိုင်းတွင်တစ်စိတ်တစ်ပိုင်း sorting ၏လိုအပ်ချက်ကိုနားလည်ရန်မူလအမိန့်တွင်သော့ချက်အမိန့်ကိုပြန်လည်ပြင်ဆင်ရန် UKSARS ကို အသုံးပြုပါ။
အကယ်. Krsort ၏ပုံမှန်ပြောင်းပြန် sorting ကိုသင်မကျေနပ်လျှင် UKSARS ကို သုံးနိုင်သည်။
$array = [
'b' => 2,
'a' => 1,
'c' => 3,
];
// 按键名逆序ရေှးချယ်,Associative Array ဖွဲ့စည်းပုံကိုထိန်းသိမ်းထားပါ
uksort($array, function($k1, $k2) {
return strcmp($k2, $k1); // ပြောင်းပြန်နှိုင်းယှဉ် string ကို
});
print_r($array);
၎င်းသည်သင့်အား sorting အပြုအမူကိုအပြည့်အဝထိန်းချုပ်ပေးသည်။
အကယ်. စီးပွားရေးယုတ္တိဗေဒသည် "အမိန့်" အတွက်အလွန်မြင့်မားသောလိုအပ်ချက်များရှိပါကအမိန့်နှင့်သက်ဆိုင်သောအရာဝတ်ထုများကဲ့သို့သောအမိန့်သို့မဟုတ်နှစ်လမ်းသွားချိတ်ဆက်ထားသောစာရင်းများကဲ့သို့သောအဆောက်အအုံများနှင့်အဓိကအမည်များကိုအသုံးပြုရန်အကြံပြုသည်။
<?php
// ဥပမာခင်းကျင်းခြင်း
$array = [
'b' => 2,
'a' => 1,
'c' => 3,
];
// စီမံကိန်း1:krsort + uksortမူရင်းအမိန့်ကို restore
$originalKeys = array_keys($array);
krsort($array);
uksort($array, function($key1, $key2) use ($originalKeys) {
$pos1 = array_search($key1, $originalKeys);
$pos2 = array_search($key2, $originalKeys);
return $pos1 - $pos2;
});
print_r($array);
// စီမံကိန်း2:uksort自定义键名逆序ရေှးချယ်
uksort($array, function($k1, $k2) {
return strcmp($k2, $k1);
});
print_r($array);
?>
Krsort သည်သော့ချက်အမည်များအပေါ် အခြေခံ. ပြောင်းပြန်နိုင်ရန်အတွက်ပြောင်းပြန်နိုင်ရန်အတွက်ခွဲထားသည်။ ပုံမှန်အားဖြင့်ဒြပ်စင်၏အမိန့်ကိုပြောင်းလဲလိမ့်မည်, သို့သော်သော့အမည်များကိုဆက်လက်ထိန်းသိမ်းထားသည်။
"အမိန့်ကိုအမိန့်" သည်များသောအားဖြင့်သော့ချက်အမည်မှာမူလအမှာစာကိုဖုံးအုပ်ထားသောကြောင့်ဖြစ်သည်။
ဖြေရှင်းနည်းမှာမူရင်းအစီအစဉ်ကိုသိမ်းဆည်းရန်သို့မဟုတ် UKSARS ကို အသုံးပြု. UKSAR ကိုအသုံးပြုရန်သို့မဟုတ် UKSARS ကိုအသုံးပြုရန်ဖြစ်သည်။
ရှုပ်ထွေးသောပြ issues နာများကိုရှောင်ရှားရန်အခြားသောအခြေအနေများတွင်အခြားဒေတာအဆောက်အအုံများကိုစဉ်းစားပါ။
အထက်ပါနည်းလမ်းများမှတစ်ဆင့်မူရင်းအစီအစဉ်ကိုမတော်တဆဆုံးရှုံးခြင်းကိုရှောင်ရှားရန်သင်ပိုမိုပြောင်းလွယ်ပြင်လွယ်ကိုပိုမိုပြောင်းလွယ်ပြင်လွယ်စွာထိန်းချုပ်နိုင်သည်။ ငါချောမွေ့သော coding အလိုရှိ၏!