လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> array_intersect_UAssoc ကိုအသုံးပြုနည်း။

array_intersect_UAssoc ကိုအသုံးပြုနည်း။

gitbox 2025-07-26

1 ။ array_intersect_UAAST ၏ function ကိုလက်မှတ်ကိုနားလည်ပါ

array_intersect_UASOC ၏အခြေခံ function ကိုလက်မှတ်သည်အောက်ပါအတိုင်းဖြစ်သည် -

 <span><span><span class="hljs-title function_ invoke__">array_intersect_uassoc</span></span><span>(</span><span><span class="hljs-keyword">array</span></span><span> </span><span><span class="hljs-variable">$array1</span></span><span>, </span><span><span class="hljs-keyword">array</span></span><span> </span><span><span class="hljs-variable">$array2</span></span><span>, </span><span><span class="hljs-keyword">callable</span></span><span> </span><span><span class="hljs-variable">$key_compare_func</span></span><span>): </span><span><span class="hljs-keyword">array</span></span><span>
</span></span>
  • $ array1, $ array2 : နှိုင်းယှဉ်ရန်ခင်းကျင်း။

  • $ key_Compare_funct : သော့များကိုနှိုင်းယှဉ်ရန်အသုံးပြုသော callback function ကို။

ဤလုပ်ဆောင်ချက်သည်သော့များနှင့်တန်ဖိုးများတန်းတူဖြစ်သည့်အခါနှစ်ခုခင်းကျင်းနှစ်လမ်းဆုံ၏လမ်းဆုံ၏ရလဒ်ကိုပြန်ပို့သည်။ array မျိုးစုံ၏လမ်းဆုံကိုသင်လိုအပ်ပါကသင်ပိုမိုပြင်ဆင်ရန် parameters တွေကိုပေးနိုင်သည်။

2 ။ အသုံးပြုမှုအမှု - အသိုက် insars အတွက်တိကျတဲ့ key-value value အားလုံးအတွက် filter

သင့်တွင်ကျောင်းသား၏အချက်အလက်အချို့ပါ 0 င်သည့်အောက်ပါအသိုက်ခင်းကျင်းမှုရှိပြီးကျောင်းသားတစ် ဦး စီတွင် ID , NAME နှင့် ရမှတ်များ ကဲ့သို့သောကွက်လပ်များရှိသည်ဆိုပါစို့။ တိကျသောအခြေအနေများအပေါ် အခြေခံ. လိုအပ်ချက်များကိုဖြည့်ဆည်းပေးသောကျောင်းသားများကိုသင်စစ်ထုတ်လိုသည်။

 <span><span><span class="hljs-variable">$students</span></span><span> = [
    </span><span><span class="hljs-string">'a'</span></span><span> =&gt; [</span><span><span class="hljs-string">'id'</span></span><span> =&gt; </span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-string">'name'</span></span><span> =&gt; </span><span><span class="hljs-string">'Tom'</span></span><span>, </span><span><span class="hljs-string">'score'</span></span><span> =&gt; </span><span><span class="hljs-number">85</span></span><span>],
    </span><span><span class="hljs-string">'b'</span></span><span> =&gt; [</span><span><span class="hljs-string">'id'</span></span><span> =&gt; </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-string">'name'</span></span><span> =&gt; </span><span><span class="hljs-string">'Jerry'</span></span><span>, </span><span><span class="hljs-string">'score'</span></span><span> =&gt; </span><span><span class="hljs-number">90</span></span><span>],
    </span><span><span class="hljs-string">'c'</span></span><span> =&gt; [</span><span><span class="hljs-string">'id'</span></span><span> =&gt; </span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-string">'name'</span></span><span> =&gt; </span><span><span class="hljs-string">'Anna'</span></span><span>, </span><span><span class="hljs-string">'score'</span></span><span> =&gt; </span><span><span class="hljs-number">78</span></span><span>],
    </span><span><span class="hljs-string">'d'</span></span><span> =&gt; [</span><span><span class="hljs-string">'id'</span></span><span> =&gt; </span><span><span class="hljs-number">4</span></span><span>, </span><span><span class="hljs-string">'name'</span></span><span> =&gt; </span><span><span class="hljs-string">'Lucy'</span></span><span>, </span><span><span class="hljs-string">'score'</span></span><span> =&gt; </span><span><span class="hljs-number">92</span></span><span>]
];
</span></span>

အကယ်. သင်သည် 80 ထက်ကြီးသောရမှတ်များဖြင့်ကျောင်းသားများကိုစစ်ထုတ်လိုပါကခင်းကျင်း၏သော့ချက်များနှင့်တန်ဖိုးများကို array_intersect_UAASSOC မှတဆင့်နှိုင်းယှဉ်ဖို့လိုသည်။

3 ။ ထုံးစံအတိုင်းနှိုင်းယှဉ် function ကို

ကျွန်ုပ်တို့သည်ကျောင်းသား၏ရမှတ်သည် 80 ထက်ကြီးသည်ကိုဆုံးဖြတ်ရန်နှိုင်းယှဉ်ခြင်း function ကိုရေးပါမည်။ ဒီ function က parametersces နှစ်ခု: သော့နှင့်တန်ဖိုးကိုလက်ခံရရှိလိမ့်မည်။ array_intersect_Uassoc အားဖြင့်၎င်းသည် ရမှတ် တန်ဖိုးအရစစ်ထုတ်ရန်ဖြစ်သည်။

 <span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">compare_scores</span></span><span>(</span><span><span class="hljs-params"><span class="hljs-variable">$key1</span></span></span><span>, </span><span><span class="hljs-variable">$val1</span></span><span>, </span><span><span class="hljs-variable">$key2</span></span><span>, </span><span><span class="hljs-variable">$val2</span></span><span>) {
    </span><span><span class="hljs-comment">// ကျောင်းသားရမှတ်များအပေါ် အခြေခံ. နှိုင်းယှဉ်</span></span><span>
    </span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-variable">$val1</span></span><span>[</span><span><span class="hljs-string">'score'</span></span><span>] &gt; </span><span><span class="hljs-number">80</span></span><span> ? </span><span><span class="hljs-number">0</span></span><span> : </span><span><span class="hljs-number">1</span></span><span>;
}
</span></span>

4

ထို့နောက်ကျွန်ုပ်တို့သည်စံသတ်မှတ်ချက်များနှင့်ကိုက်ညီသောကျောင်းသားများကိုစစ်ထုတ်ရန် Array_intersect_UAST_UAST_UASTOOC ကို အသုံးပြုသည်။

 <span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_intersect_uassoc</span></span><span>(</span><span><span class="hljs-variable">$students</span></span><span>, </span><span><span class="hljs-variable">$students</span></span><span>, </span><span><span class="hljs-string">'compare_scores'</span></span><span>);
</span></span>

အထက်ပါကုဒ်များ တွင် ကျွန်ုပ်တို့သည်ပထမနှင့်ဒုတိယ parameters များအဖြစ် ဒေါ်လာကျောင်းသားများအတွက် arrays ကိုအသုံးပြုသည်။ ဤလုပ်ဆောင်မှုသည်ကျောင်းသား၏ ရမှတ်အမှတ်အသား အရ element ကို filter လုပ်သည်။

5 ။ output ရလဒ်

စစ်ထုတ်ထားသောရလဒ်များတွင် 80 ထက်ကြီးသောကျောင်းသားများနှင့်ပတ်သက်သောသတင်းအချက်အလက်များပါ 0 င်သည်။

 <span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$result</span></span><span>);
</span></span>

output ကိုဖြစ်လိမ့်မည်:

 <span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
    [a] =&gt; </span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
        (
            [id] =&gt; </span><span><span class="hljs-number">1</span></span><span>
            [name] =&gt; Tom
            [score] =&gt; </span><span><span class="hljs-number">85</span></span><span>
        )
    [b] =&gt; </span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
        (
            [id] =&gt; </span><span><span class="hljs-number">2</span></span><span>
            [name] =&gt; Jerry
            [score] =&gt; </span><span><span class="hljs-number">90</span></span><span>
        )
    [d] =&gt; </span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
        (
            [id] =&gt; </span><span><span class="hljs-number">4</span></span><span>
            [name] =&gt; Lucy
            [score] =&gt; </span><span><span class="hljs-number">92</span></span><span>
        )
)
</span></span>

မြင်တွေ့ရနိုင်သည့်အတိုင်း 80 ထက်ကြီးသော ရမှတ်များ ရှိသောကျောင်းသားများသာပြသထားသည်။