လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> array_intesect_key ဆိုတာဘာလဲ။ ဤ PHP function ကိုအသေးစိတ်အချက်အလက်များကိုမိတ်ဆက်ပေးပါ

array_intesect_key ဆိုတာဘာလဲ။ ဤ PHP function ကိုအသေးစိတ်အချက်အလက်များကိုမိတ်ဆက်ပေးပါ

gitbox 2025-09-02
<span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// ရှေ့ - အဆုံးဆီလျှော်အစိတ်အပိုင်း</span></span><span>
</span><span><span class="hljs-variable">$dummyArray</span></span><span> = [</span><span><span class="hljs-string">"a"</span></span><span> =&gt; </span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-number">3</span></span><span>];
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$dummyArray</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$key</span></span><span> =&gt; </span><span><span class="hljs-variable">$value</span></span><span>) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$key</span></span><span> . </span><span><span class="hljs-string">" =&gt; "</span></span><span> . </span><span><span class="hljs-variable">$value</span></span><span> . </span><span><span class="hljs-string">"\n"</span></span><span>;
}
</span><span><span class="hljs-meta">?&gt;</span></span><span>

&lt;hr&gt;

</span><span><span class="hljs-meta">&lt;?php</span></span><span>
<span class="hljs-comment">/**
 * ဘာလဲ array_intersect_key?အသေးစိတ်မိတ်ဆက်ပေးပါ PHP လုပ်ဆောင်ချက်များကိုနှင့်အသုံးပြုမှု
 *
 * တည်နေ PHP အလယ်ပိုင်း,array_intersect_key ၎င်းသည် Array စစ်ဆင်ရေးများအတွက်အရေးကြီးသော function တစ်ခုဖြစ်သည်。၎င်း၏အဓိက function ကိုဖြစ်ပါတယ်
 * Array ကိုပြန်ပို့ပါ,该数组包含了存တည်နေ于Multiple Arraysအလယ်ပိုင်း的相同键名的元素,သူတို့ရဲ့တန်ဖိုးတွေကိုဂရုမစိုက်ပါနဲ့。
 *
 * အခြေခံ syntax:
 * array array_intersect_key(array $array1, array ...$arrays)
 *
 * parameter ကိုဖော်ပြချက်:
 * - $array1: ဖြစ်ရမည်,ပထမ ဦး ဆုံး input ကို array。
 * - ...$arrays: မလုပ်မနေရမဟုတ်သော,တစ်ခုသို့မဟုတ်တစ်ခုထက်ပိုသောအခြား arrays,သော့ချက်အမည်များကိုနှိုင်းယှဉ်ဖို့အသုံးပြုခဲ့သည်。
 *
 * Value ကိုပြန်သွားပါ:
 * Array ကိုပြန်ပို့ပါ,ဤသည်ခင်းကျင်းသာပါဝင်သည် $array1 အလယ်ပိုင်း那些键也出现တည်နေ其他数组အလယ်ပိုင်း的元素。
 *
 * အသုံးပြုမှုဥပမာ:
 */</span>

</span><span><span class="hljs-variable">$array1</span></span><span> = [
    </span><span><span class="hljs-string">"a"</span></span><span> =&gt; </span><span><span class="hljs-number">100</span></span><span>,
    </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">200</span></span><span>,
    </span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-number">300</span></span><span>
];

</span><span><span class="hljs-variable">$array2</span></span><span> = [
    </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">400</span></span><span>,
    </span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-number">500</span></span><span>,
    </span><span><span class="hljs-string">"d"</span></span><span> =&gt; </span><span><span class="hljs-number">600</span></span><span>
];

</span><span><span class="hljs-comment">// 取出两个数组အလယ်ပိုင်း相同键的元素</span></span><span>
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_intersect_key</span></span><span>(</span><span><span class="hljs-variable">$array1</span></span><span>, </span><span><span class="hljs-variable">$array2</span></span><span>);

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

<span class="hljs-comment">/**
 * ရလဒ်ရလဒ်:
 * Array
 * (
 *     [b] =&gt; 200
 *     [c] =&gt; 300
 * )
 *
 * မြင်နိုင်တယ်,သော့များသာ "b" နှင့် "c" 存တည်နေ于 $array1 နှင့် $array2 အလယ်ပိုင်း,ထို့ကြောင့်နောက်ဆုံးပြန်လာ Array
 * သက်ဆိုင်ရာပါရှိသည် $array1 အလယ်ပိုင်း的值。
 *
 * မှတ်သားရန်အရာ:
 * 1. array_intersect_key ခင်းကျင်း၏အဓိကအကြောင်းရင်းများကိုသာနှိုင်းယှဉ်ပါ,အဓိကတန်ဖိုးများကိုမနှိုင်းယှဉ်ပါနှင့်。
 * 2. functions များသည်နှိုင်းယှဉ်မှုအတွက်တစ်ချိန်တည်းတွင် array များစွာကိုလက်ခံနိုင်သည်,最终返回只保留那些တည်နေ所有数组အလယ်ပိုင်း都存တည်နေ的键。
 *
 * နမူနာ:Multiple Arrays
 */</span>
</span><span><span class="hljs-variable">$array3</span></span><span> = [
    </span><span><span class="hljs-string">"c"</span></span><span> =&gt; </span><span><span class="hljs-number">700</span></span><span>,
    </span><span><span class="hljs-string">"b"</span></span><span> =&gt; </span><span><span class="hljs-number">800</span></span><span>
];

</span><span><span class="hljs-variable">$result2</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_intersect_key</span></span><span>(</span><span><span class="hljs-variable">$array1</span></span><span>, </span><span><span class="hljs-variable">$array2</span></span><span>, </span><span><span class="hljs-variable">$array3</span></span><span>);

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

<span class="hljs-comment">/**
 * ရလဒ်ရလဒ်:
 * Array
 * (
 *     [b] =&gt; 200
 *     [c] =&gt; 300
 * )
 *
 * ဒီမှာ,最终结果是保留同时存တည်နေ于 $array1, $array2 နှင့် $array3 အလယ်ပိုင်း的键。
 *
 * အကျဉ်းချုပ်:
 * array_intersect_key ၎င်းသည် inarray key names ၏လမ်းဆုံကိုကိုင်တွယ်ရန်အစွမ်းထက်သောကိရိယာတစ်ခုဖြစ်သည်,尤其适用于တည်နေ多维数组或关联数组
 * အလယ်ပိုင်း筛选出指定的键,Manual Loop တရားသဖြင့်စီရင်ခြင်းကိုရှောင်ပါ,提高代码效率နှင့်可读性。
 */</span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>