ပထမ ဦး စွာ Max () function ကို၏အခြေခံအသုံးပြုမှုကိုပြန်လည်သုံးသပ်ကြပါစို့။ ၎င်းသည် Array တစ်ခုသို့မဟုတ်တစ်ခုချင်းစီတန်ဖိုးများကို parameters များအဖြစ်လက်ခံရရှိနိုင်ပြီး၎င်းတို့အနက်အများဆုံးတန်ဖိုးကိုပြန်ပို့သည်။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$values</span></span><span> = [</span><span><span class="hljs-number">10</span></span><span>, </span><span><span class="hljs-number">20</span></span><span>, </span><span><span class="hljs-number">30</span></span><span>, </span><span><span class="hljs-number">40</span></span><span>, </span><span><span class="hljs-number">50</span></span><span>];
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">max</span></span><span>(</span><span><span class="hljs-variable">$values</span></span><span>); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း 50</span></span><span>
</span></span>
ဤလုပ်ဆောင်မှုသည် parameter အမြောက်များစွာကိုထောက်ပံ့ပေးပြီး parameter သည်သီးခြားတန်ဖိုးတစ်ခုအဖြစ်နှိုင်းယှဉ်ထားသည်။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">max</span></span><span>(</span><span><span class="hljs-number">10</span></span><span>, </span><span><span class="hljs-number">20</span></span><span>, </span><span><span class="hljs-number">30</span></span><span>, </span><span><span class="hljs-number">40</span></span><span>, </span><span><span class="hljs-number">50</span></span><span>); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း 50</span></span><span>
</span></span>
ရိုးရှင်းသောခင်းကျင်းတည်ဆောက်ပုံအတွက် max () function ကိုအသုံးပြုရန်အလွန်ရိုးရှင်းပါသည်။ သို့သော် Array များသည်ပိုမိုရှုပ်ထွေးလာသောအခါအထူးသဖြင့်ဘာသာစကားအမျိုးမျိုးရှိသည့်အရေးပါသောအခြေအနေများကွဲပြားခြားနားလိမ့်မည်။
Multiens-dimensenal array များတွင် max () function ကိုပုံမှန်အားဖြင့်ပြင်ပခင်းကျင်းသော element များကိုသာကိုင်တွယ်နိုင်သည်။ Multidimensional Array အတွင်းအမြင့်ဆုံးတန်ဖိုးကိုကျွန်ုပ်တို့ရှာဖွေလိုပါကနောက်ထပ်အပြောင်းအလဲနဲ့နည်းလမ်းအချို့ကိုအားထားရန်လိုအပ်သည်။ ဤတွင်အနည်းငယ်ဘုံအကြံဥာဏ်များဖြစ်ကြသည်။
ကျွန်ုပ်တို့တွင်ရှုထောင့်အမျိုးမျိုး ရှိ. ခင်းကျင်းမှု၏ subarry တစ်ခုစီတွင်နံပါတ်အချို့ပါရှိသည်ဆိုပါစို့။ subarray တစ်ခုချင်းစီတွင်အများဆုံးတန်ဖိုးကိုရလိုပါကကျွန်ုပ်တို့သည် subarray ကို array_map () function ကိုဖြတ်ပြီး subarray တစ်ခုချင်းစီကိုပထမ ဦး စွာလျှောက်ထားနိုင်ပြီးအများဆုံးတန်ဖိုးကိုရှာဖွေရန် max () ကိုသုံးနိုင်သည်။ ဥပမာများမှာအောက်ပါအတိုင်းဖြစ်သည် -
<span><span><span class="hljs-variable">$array</span></span><span> = [
[</span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-number">3</span></span><span>],
[</span><span><span class="hljs-number">4</span></span><span>, </span><span><span class="hljs-number">5</span></span><span>, </span><span><span class="hljs-number">6</span></span><span>],
[</span><span><span class="hljs-number">7</span></span><span>, </span><span><span class="hljs-number">8</span></span><span>, </span><span><span class="hljs-number">9</span></span><span>]
];
</span><span><span class="hljs-comment">// တစ်ခုချင်းစီကို subarray ၏အများဆုံးတန်ဖိုးကိုရယူပါ</span></span><span>
</span><span><span class="hljs-variable">$max_values</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_map</span></span><span>(</span><span><span class="hljs-string">'max'</span></span><span>, </span><span><span class="hljs-variable">$array</span></span><span>);
</span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း每个子数组的最大အဘိုး</span></span><span>
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$max_values</span></span><span>); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း [3, 6, 9]</span></span><span>
</span><span><span class="hljs-comment">// အများဆုံးတန်ဖိုးကိုရယူပါ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">max</span></span><span>(</span><span><span class="hljs-variable">$max_values</span></span><span>); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း 9</span></span><span>
</span></span>
ဤဥပမာတွင် array_map ('max', $ array) သည် subarray တစ်ခုချင်းစီတွင်အများဆုံးတန်ဖိုးကိုရရှိရန် Subarray တစ်ခုချင်းစီအတွက် max (') function ကိုအသုံးပြုလိမ့်မည်။ ထို့နောက်အများဆုံးအများဆုံးတန်ဖိုးများကိုရရှိရန် max () function ကိုသုံးပါ။
တစ်ခါတစ်ရံတွင် Multidimensional Array တွင်အချက်အလက်များသည်တွဲဖက်ခင်းကျင်းမှုတစ်ခုဖြစ်ပြီး subarray တစ်ခုစီတွင်သီးခြားသော့ (ဥပမာ "ရမှတ်) ၏တန်ဖိုးအမြင့်ဆုံးတန်ဖိုးကိုရှာဖွေလိုသည်။ ဤကိစ္စတွင် array_colum () သည်အလွန်အသုံးဝင်သည်။ ၎င်းသည် Multidimensional Array တွင် subarrays အားလုံး၏သတ်မှတ်ထားသောကော်လံကိုထုတ်ယူပြီး Max () function ကို တွဲဖက်. သုံးပါ။ ဥပမာများမှာအောက်ပါအတိုင်းဖြစ်သည် -
<span><span><span class="hljs-variable">$array</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">85</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">90</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">92</span></span><span>]
];
</span><span><span class="hljs-comment">// ကျောင်းသားအားလုံးကိုထုတ်ယူပါ 'scoreအဘိုး</span></span><span>
</span><span><span class="hljs-variable">$scores</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_column</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>, </span><span><span class="hljs-string">'score'</span></span><span>);
</span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း所有学生的分数</span></span><span>
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$scores</span></span><span>); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း [85, 90, 92]</span></span><span>
</span><span><span class="hljs-comment">// အများဆုံးရမှတ်ရယူပါ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">max</span></span><span>(</span><span><span class="hljs-variable">$scores</span></span><span>); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း 92</span></span><span>
</span></span>
ဤဥပမာတွင် array_column ($ array, 'ရမှတ်') သည် ကျောင်းသားများအားလုံးအတွက်ရမှတ်များကိုထုတ်ယူပြီးအများဆုံးရမှတ်ကိုရှာဖွေရန် Max () function ကိုအသုံးပြုသည်။
အကယ်. ခင်းကျင်းမှု၏အသိုက်အဆင့်သည်ပိုမိုနက်ရှိုင်းပါက၎င်းကိုကိုင်တွယ်ရန် recursive နည်းလမ်းများကိုသုံးနိုင်သည်။ ပြန်လည်ပြုပြင်ခြင်းလုပ်ဆောင်ချက်များကို Multiens-dacrasenal array များမှတဆင့်ဆက်သွယ်ရန်နှင့်အများဆုံးတန်ဖိုးကိုရှာတွေ့နိုင်သည်။ ဤတွင် recursive method ကိုဥပမာတစ်ခု၏ဥပမာတစ်ခုဖြစ်သည်။
<span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">getMaxValue</span></span><span>(</span><span><span class="hljs-params"><span class="hljs-variable">$array</span></span></span><span>) {
</span><span><span class="hljs-variable">$max</span></span><span> = PHP_INT_MIN; </span><span><span class="hljs-comment">// 设置一个初始အဘိုး</span></span><span>
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$array</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$value</span></span><span>) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_array</span></span><span>(</span><span><span class="hljs-variable">$value</span></span><span>)) {
</span><span><span class="hljs-comment">// 如果အဘိုး是一个数组,ထို့နောက် remursiven ကိုခေါ်ပါ</span></span><span>
</span><span><span class="hljs-variable">$max</span></span><span> = </span><span><span class="hljs-title function_ invoke__">max</span></span><span>(</span><span><span class="hljs-variable">$max</span></span><span>, </span><span><span class="hljs-title function_ invoke__">getMaxValue</span></span><span>(</span><span><span class="hljs-variable">$value</span></span><span>));
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-comment">// 否则直接与当前最大အဘိုး比较</span></span><span>
</span><span><span class="hljs-variable">$max</span></span><span> = </span><span><span class="hljs-title function_ invoke__">max</span></span><span>(</span><span><span class="hljs-variable">$max</span></span><span>, </span><span><span class="hljs-variable">$value</span></span><span>);
}
}
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-variable">$max</span></span><span>;
}
</span><span><span class="hljs-variable">$array</span></span><span> = [
[</span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>, [</span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-number">4</span></span><span>]],
[</span><span><span class="hljs-number">5</span></span><span>, </span><span><span class="hljs-number">6</span></span><span>, [</span><span><span class="hljs-number">7</span></span><span>, </span><span><span class="hljs-number">8</span></span><span>]],
</span><span><span class="hljs-number">9</span></span><span>
];
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">getMaxValue</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း 9</span></span><span>
</span></span>
ဤနည်းလမ်းသည်ခင်းကျင်းသည့်အလွှာတစ်ခုစီကိုဖြတ်သန်းသွားသည်။ အကယ်. လက်ရှိတန်ဖိုးသည်ခင်းကျင်းနေပါက၎င်းသည်ဆက်လက်နှိုင်းယှဉ်ရန်လာမည့်အလွှာသို့သွားသည်, အကယ်. ၎င်းသည်ဂဏန်းတန်ဖိုးတစ်ခုဖြစ်ပါက၎င်းကိုလက်ရှိတန်ဖိုးနှင့်နှိုင်းယှဉ်ထားသည်။ နောက်ဆုံးအနေဖြင့် Multidimensional Array တစ်ခုလုံးအတွက်အများဆုံးတန်ဖိုးကိုပြန်ပို့သည်။