ရှုပ်ထွေးသောအချက်အလက်များကိုရှာဖွေရန်အကောင်းဆုံးနည်းလမ်းကိုရရှိရန် array_map နှင့်ပေါင်းစပ်ထားသော Array_map နှင့်ပေါင်းစပ်အသုံးပြုနည်း
PHP တွင် Arsort နှင့် Array_map သည်အလွန်အသုံးဝင်သောလုပ်ဆောင်ချက်နှစ်ခုဖြစ်သည်။ ယခင်ကအမှာစာကိုအစဉ်လိုက်အားဖြင့်အစဉ်အဆက်ကိုတန်ဖိုးထားရန်အသုံးပြုသည်။ ဤလုပ်ဆောင်ချက်နှစ်ခုကိုရှုပ်ထွေးသောအချက်အလက်များရှာဖွေခြင်းကိုရရှိရန်ပေါင်းစပ်နိုင်သည်။
ရှုပ်ထွေးသောအချက်အလက်များကိုရှာဖွေရန်အကောင်းဆုံးနည်းလမ်းကိုရရှိရန် Arsort နှင့် Array_map ကို မည်သို့အသုံးပြုရမည်ကိုဤဆောင်းပါးကရှင်းပြပါမည်။ လက်တွေ့ကျသောဥပမာများမှတဆင့်လူတိုင်းကိုပိုမိုနားလည်ရန်ကူညီပေးပါမည်။
ARSARC : Arsort: Arsort ကို အစဉ်အဆက်အစဉ်အလာကိုအစဉ်အဆက်အစဉ်အဆက်အစဉ်အလာအရအစဉ်အလာဖြင့်ခွဲခြားရန်အသုံးပြုသည်။ ခင်းကျင်းမှု၏တန်ဖိုးသည်ဂဏန်းများပါ 0 င်ပါက ARSARS သည်အရွယ်အစားအားဖြင့် sorts နှင့်တန်ဖိုးသည် string တစ်ခုဖြစ်ပါကအမှာစာတွင်တည်ရှိသည်။
Array_map : Array_Map သည် ခင်းကျင်းမှုရှိဒြပ်စင်တစ်ခုစီသို့ callback function ကိုအသုံးပြုရန်ခွင့်ပြုသည်။ sorting မလုပ်ခင် array_map ကို သုံးရန်, format သို့မဟုတ် format သို့မဟုတ် format data များကို array ၏ဒြပ်စင်များနှင့်ကိုက်ညီရန်ပြင်ဆင်ခြင်းလိုအပ်ချက်များနှင့်ကိုက်ညီစေရန်။
ကျွန်ုပ်တို့တွင်အဆင့်များအလိုက်ခွဲထားလိုသောကျောင်းသားများ၏အမည်များနှင့်အဆင့်များကိုသိမ်းဆည်းထားသော MultidimenDimendoal array ရှိသည်ဆိုပါစို့။
<span><span><span class="hljs-variable">$students</span></span><span> = [
[</span><span><span class="hljs-string">"name"</span></span><span> => </span><span><span class="hljs-string">"Alice"</span></span><span>, </span><span><span class="hljs-string">"score"</span></span><span> => </span><span><span class="hljs-number">90</span></span><span>],
[</span><span><span class="hljs-string">"name"</span></span><span> => </span><span><span class="hljs-string">"Bob"</span></span><span>, </span><span><span class="hljs-string">"score"</span></span><span> => </span><span><span class="hljs-number">75</span></span><span>],
[</span><span><span class="hljs-string">"name"</span></span><span> => </span><span><span class="hljs-string">"Charlie"</span></span><span>, </span><span><span class="hljs-string">"score"</span></span><span> => </span><span><span class="hljs-number">85</span></span><span>],
[</span><span><span class="hljs-string">"name"</span></span><span> => </span><span><span class="hljs-string">"David"</span></span><span>, </span><span><span class="hljs-string">"score"</span></span><span> => </span><span><span class="hljs-number">95</span></span><span>]
];
</span></span>
ဤကျောင်းသားများကို ရမှတ် ဖြင့်အစဉ်အလာတွင်အစဉ်အလာတွင်စီရန်လိုသည်။
ပထမ ဦး စွာရမှတ် ( ရမှတ် ) ကိုထုတ်ယူရန် array_map ကို သုံးပါ ။
<span><span><span class="hljs-comment">// ကျောင်းသား၏ရလဒ်များကိုထုတ်ယူပါ</span></span><span>
</span><span><span class="hljs-variable">$scores</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_map</span></span><span>(function(</span><span><span class="hljs-variable">$student</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-variable">$student</span></span><span>[</span><span><span class="hljs-string">'score'</span></span><span>];
}, </span><span><span class="hljs-variable">$students</span></span><span>);
</span><span><span class="hljs-comment">// ရလဒ်များကိုဆင်းအမိန့်အတွက်ရလဒ်များကို sort</span></span><span>
</span><span><span class="hljs-title function_ invoke__">arsort</span></span><span>(</span><span><span class="hljs-variable">$scores</span></span><span>);
</span><span><span class="hljs-comment">// Sorted အဆင့်အပေါ်အခြေခံပြီးကျောင်းသား array ကိုပြန်လည်စီစဉ်ပါ</span></span><span>
</span><span><span class="hljs-variable">$sorted_students</span></span><span> = [];
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$scores</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$index</span></span><span> => </span><span><span class="hljs-variable">$score</span></span><span>) {
</span><span><span class="hljs-variable">$sorted_students</span></span><span>[] = </span><span><span class="hljs-variable">$students</span></span><span>[</span><span><span class="hljs-variable">$index</span></span><span>];
}
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$sorted_students</span></span><span>);
</span></span>
Array_map : ကျောင်းသား၏အဆင့်အတန်းကိုပြန်ပေးသည့် ဒေါ်လာကျောင်းသားများအတွက် (ကျောင်းသားတစ် ဦး စီ) တစ်ခုစီတွင်အမည်မသိ function ကိုလုပ်ဆောင်ရန် array_map ကို အသုံးပြုသည်။ နောက်ဆုံးအနေဖြင့်ကျွန်ုပ်တို့သည်အဆင့်အတန်းများပါ 0 င်သည့် ဒေါ်လာရမှတ်များ ရရှိသည်။
ARSARC - အဆင့်မြင့်သောကျောင်းသားများသည်ရှေ့တန်းမှ 0 င်ရောက်ရန်သေချာစေရန် ARSARS ကိုအစဉ်အဆက်ကို sort လုပ်ရန် ARSARS ကို အသုံးပြုပါ။
ကျောင်းသား ARRAY ကိုပြန်လည်စီစဉ်ပါ ။ ARSARS သည် အတန်းများအလိုက်ခွဲထားသောခင်းကျင်းမှုကိုပြန်လည်ပေးဆပ်မည်ဖြစ်သော်လည်းအညွှန်းကိန်းအရမူရင်းကျောင်းသားခင်းကျင်းမှုကိုပြန်လည်စီစဉ်ရန်လည်းလိုအပ်သည်။ ဤနေရာတွင် Forach Loop သည်ကျောင်းသား Array-Deport of Sorted Array array array array array array array array array array array array array array array on array on array array array array array array on array array array array array array array array on array array array array array array array array array array array)
ကျွန်ုပ်တို့သည်ပထမအဆင့်များအနေဖြင့်ခွဲခြားခြင်းကဲ့သို့သောစံနှုန်းမျိုးစုံကိုခွဲရန်လိုအပ်သည်ဆိုပါစို့။ ဤအချိန်တွင်ကျွန်ုပ်တို့သည်ဤအခြေအနေများကိုလုပ်ဆောင်ရန် array_map ကို သုံး နိုင်သည် ။
<span><span><span class="hljs-variable">$students</span></span><span> = [
[</span><span><span class="hljs-string">"name"</span></span><span> => </span><span><span class="hljs-string">"Alice"</span></span><span>, </span><span><span class="hljs-string">"score"</span></span><span> => </span><span><span class="hljs-number">90</span></span><span>],
[</span><span><span class="hljs-string">"name"</span></span><span> => </span><span><span class="hljs-string">"Bob"</span></span><span>, </span><span><span class="hljs-string">"score"</span></span><span> => </span><span><span class="hljs-number">75</span></span><span>],
[</span><span><span class="hljs-string">"name"</span></span><span> => </span><span><span class="hljs-string">"Charlie"</span></span><span>, </span><span><span class="hljs-string">"score"</span></span><span> => </span><span><span class="hljs-number">90</span></span><span>],
[</span><span><span class="hljs-string">"name"</span></span><span> => </span><span><span class="hljs-string">"David"</span></span><span>, </span><span><span class="hljs-string">"score"</span></span><span> => </span><span><span class="hljs-number">85</span></span><span>]
];
</span><span><span class="hljs-comment">// ယူရိုများနှင့်အမည်များထုတ်ယူ</span></span><span>
</span><span><span class="hljs-variable">$scores</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_map</span></span><span>(function(</span><span><span class="hljs-variable">$student</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-variable">$student</span></span><span>[</span><span><span class="hljs-string">'score'</span></span><span>];
}, </span><span><span class="hljs-variable">$students</span></span><span>);
</span><span><span class="hljs-variable">$names</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_map</span></span><span>(function(</span><span><span class="hljs-variable">$student</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-variable">$student</span></span><span>[</span><span><span class="hljs-string">'name'</span></span><span>];
}, </span><span><span class="hljs-variable">$students</span></span><span>);
</span><span><span class="hljs-comment">// အဆင့်၏အမိန့်အားဖြင့် sort,တက်ကြွစွာအမိန့်အားဖြင့် sort</span></span><span>
</span><span><span class="hljs-title function_ invoke__">array_multisort</span></span><span>(</span><span><span class="hljs-variable">$scores</span></span><span>, SORT_DESC, </span><span><span class="hljs-variable">$names</span></span><span>, SORT_ASC, </span><span><span class="hljs-variable">$students</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$students</span></span><span>);
</span></span>
ဤဥပမာတွင်ကျွန်ုပ်တို့သည် array_multisort ကို အသုံးပြုသည်။ ပထမ ဦး စွာ ရမှတ်အတွက်ဆင်းနိုင်ရန်အတွက်အမိန့် အတွက်မျိုးနှင့်တန်းအတူတူဖြစ်လျှင်, အ မိန့် အတွက်အမိန့်အတွက် sort ။
Arsort နှင့် array_map ပေါင်းစပ်မှုသည်ရှုပ်ထွေးသောဒေတာအမျိုးအစားများအတွက်အစွမ်းထက်သောစွမ်းရည်များကိုပေးသည်။ ကျွန်ုပ်တို့သည်အချက်အလက်များကို array_map မှတဆင့်လုပ်ငန်းစဉ်သို့မဟုတ်သော့ကွက်လပ်များကိုခွဲထုတ်ခြင်းမပြုမီလုပ်ဆောင်နိုင်ပြီး array_multisort မှတဆင့်အမှာစာကိုရယူရန်နှင့် array_multisort နှင့်ပေါင်းစပ်။
ဤလုပ်ဆောင်မှုများကိုပြောင်းလွယ်ပြင်လွယ်စွာအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ရှုထောင့်အမျိုးမျိုးတပ်ဆင်ခြင်းနှင့်ရှုပ်ထွေးသောအချက်အလက်များကိုပြုပြင်ပြောင်းလဲရန်အတွက်စာဖတ်နိုင်မှုနှင့်ကွပ်မျက်မှုနှင့်လုပ်ဆောင်မှုကိုတိုးတက်စေရန်အတွက်ပိုမိုထိရောက်စွာနှင့်အဆင်ပြေစွာအသုံးပြုနိုင်သည်။
သက်ဆိုင်သောတက်(ဂ်)များ:
array_map