လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> array_walk နဲ့ array_keys ကိုဘယ်လိုသုံးရမလဲ။ ဒေတာသုတ်ထုတ်ခြင်းလုပ်ငန်းစဉ်၏ခွဲခြမ်းစိတ်ဖြာခြင်း

array_walk နဲ့ array_keys ကိုဘယ်လိုသုံးရမလဲ။ ဒေတာသုတ်ထုတ်ခြင်းလုပ်ငန်းစဉ်၏ခွဲခြမ်းစိတ်ဖြာခြင်း

gitbox 2025-08-25

1 ။ array_fatch_eys function ကိုမိတ်ဆက်

array_fate_Keys function သည်ပေးထားသောခင်းကျင်းမှုတစ်ခုမှလာသောခင်းကျင်းမှုအသစ်တစ်ခုကိုဖန်တီးရန်အသုံးပြုသည်။ သော့တစ်ခုစီ၏သက်ဆိုင်ရာတန်ဖိုးများသည်တူညီသောတန်ဖိုးရှိသည်။ ဤလုပ်ဆောင်မှု၏ရှေ့ပြေးပုံစံသည်အောက်ပါအတိုင်းဖြစ်သည် -

 <span><span><span class="hljs-keyword">array</span></span><span> </span><span><span class="hljs-title function_ invoke__">array_fill_keys</span></span><span> ( </span><span><span class="hljs-keyword">array</span></span><span> </span><span><span class="hljs-variable">$keys</span></span><span> , </span><span><span class="hljs-keyword">mixed</span></span><span> </span><span><span class="hljs-variable">$value</span></span><span> )
</span></span>
  • $ သော့များ - ဤသည်သော့ချက်အမည်များပါသည့် array တစ်ခုဖြစ်သည်။

  • $ တန်ဖိုး - သော့တစ်ခုစီနှင့်သက်ဆိုင်သောတန်ဖိုးနှင့်သော့အားလုံးသည်ဤတန်ဖိုးနှင့်ကိုက်ညီလိမ့်မည်။

ဥပမာ -

 <span><span><span class="hljs-variable">$keys</span></span><span> = [</span><span><span class="hljs-string">'apple'</span></span><span>, </span><span><span class="hljs-string">'banana'</span></span><span>, </span><span><span class="hljs-string">'cherry'</span></span><span>];
</span><span><span class="hljs-variable">$value</span></span><span> = </span><span><span class="hljs-number">0</span></span><span>;
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_fill_keys</span></span><span>(</span><span><span class="hljs-variable">$keys</span></span><span>, </span><span><span class="hljs-variable">$value</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></span>

ထုတ်လုပ်မှု -

 <span><span>Array
(
    [</span><span><span class="hljs-meta">apple</span></span><span>] =&gt; </span><span><span class="hljs-number">0</span></span><span>
    [</span><span><span class="hljs-meta">banana</span></span><span>] =&gt; </span><span><span class="hljs-number">0</span></span><span>
    [</span><span><span class="hljs-meta">cherry</span></span><span>] =&gt; </span><span><span class="hljs-number">0</span></span><span>
)
</span></span>

ဤဥပမာသည် $ သော့များခင်း ကျင်းမှုမှ array ၏သော့အမည်ရှိ array အသစ်တစ်ခုကိုဖန်တီးသည်။ သော့တစ်ခုစီ၏တန်ဖိုးသည် 0 ဖြစ်သည်။

2 ။ array_walk function ကိုမိတ်ဆက်

Array_walk function ကို array ကိုဖြတ်ပြီးသုံးပြီး element တစ်ခုစီအတွက် callback function ကိုသုံးလေ့ရှိတယ်။ ၎င်း၏ရှေ့ပြေးပုံစံသည်အောက်ပါအတိုင်းဖြစ်သည် -

 <span><span><span class="hljs-keyword">bool</span></span><span> </span><span><span class="hljs-title function_ invoke__">array_walk</span></span><span> ( </span><span><span class="hljs-keyword">array</span></span><span> &amp;</span><span><span class="hljs-variable">$array</span></span><span> , </span><span><span class="hljs-keyword">callable</span></span><span> </span><span><span class="hljs-variable">$callback</span></span><span> [, </span><span><span class="hljs-keyword">mixed</span></span><span> </span><span><span class="hljs-variable">$userdata</span></span><span> = </span><span><span class="hljs-literal">NULL</span></span><span> ] )
</span></span>
  • $ array : ဤသည် in ရာဝတီအတွက် passed ဖြစ်ပါတယ်။ သတိပြုပါအမျိုးအစားကိုမှတ်သားပါကမူရင်းခင်းကျင်းမှုကိုတိုက်ရိုက်ပြုပြင်လိမ့်မည်။

  • $ callback : ခင်းကျင်းမှုတစ်ခုစီ၏ element တစ်ခုစီကိုလုပ်ဆောင်သော callback function ကို။

  • $ userData : optional ကိုအပိုဆောင်း parameter တွေကိုဒုတိယ parameter တွေကိုဒုတိယ parameter တွေကိုအဖြစ်ပြန်ပို့ပေးလိမ့်မည်။

ဥပမာ -

 <span><span><span class="hljs-variable">$array</span></span><span> = [</span><span><span class="hljs-string">'apple'</span></span><span> =&gt; </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-string">'banana'</span></span><span> =&gt; </span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-string">'cherry'</span></span><span> =&gt; </span><span><span class="hljs-number">4</span></span><span>];
</span><span><span class="hljs-title function_ invoke__">array_walk</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>, function (&amp;</span><span><span class="hljs-variable">$value</span></span><span>, </span><span><span class="hljs-variable">$key</span></span><span>) {
    </span><span><span class="hljs-variable">$value</span></span><span> = </span><span><span class="hljs-variable">$value</span></span><span> * </span><span><span class="hljs-number">2</span></span><span>;
});
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>);
</span></span>

ထုတ်လုပ်မှု -

 <span><span>Array
(
    [</span><span><span class="hljs-meta">apple</span></span><span>] =&gt; </span><span><span class="hljs-number">4</span></span><span>
    [</span><span><span class="hljs-meta">banana</span></span><span>] =&gt; </span><span><span class="hljs-number">6</span></span><span>
    [</span><span><span class="hljs-meta">cherry</span></span><span>] =&gt; </span><span><span class="hljs-number">8</span></span><span>
)
</span></span>

ဤဥပမာတွင် array_walk သည် element တစ်ခုစီကိုခင်းကျင်းခြင်းနှင့်တစ်ခုချင်းစီ၏တန်ဖိုးကို 2 ဖြင့်မြှောက်လိမ့်မည်။

3 ။ array_kkeys နှင့် array_walk ကို သုံးပါ

အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ဤတန်ဖိုးများကိုအသုတ်မဆိုမီပြင်ဆင်ထားသောတန်ဖိုးများနှင့်အတူခင်းကျင်းသောတန်ဖိုးများနှင့်အတူခင်းကျင်းမှုကိုအစပြုရန်မကြာခဏလိုအပ်သည်။ ကျွန်ုပ်တို့သည်ဤလိုအပ်ချက်ကို array_key_Keys နှင့် array_walk ကို ပေါင်းစပ်ပြီးအောင်မြင်နိုင်သည်။

အမှန်တကယ်ကိစ္စ - ကျွန်ုပ်တို့တွင်သုံးစွဲသူ ID နှင့်သူဝယ်ယူထားသောပစ္စည်းအရေအတွက်ပါ 0 င်သောသုံးစွဲသူ၏အမိန့်သတင်းအချက်အလက်ကိုကိုယ်စားပြုသော array တစ်ခုရှိသည်ဆိုပါစို့။ သုံးစွဲသူ IDS အားလုံးပါ 0 င်သည့် array တစ်ခုစီကို 0 0 (ကန ဦး ဝယ်ယူမှုအရေအတွက်ကိုညွှန်ပြသည်) ဖြင့် 0 ယ်ယူမှုပမာဏကို array_walk မှတဆင့် 0 ယ်ယူမှုအရေအတွက်ကိုအသစ်ပြောင်းပါလိမ့်မည်။

နမူနာကုဒ် :

 <span><span><span class="hljs-comment">// အသုံးပြုသူIDစာရင်း</span></span><span>
</span><span><span class="hljs-variable">$user_ids</span></span><span> = [</span><span><span class="hljs-number">101</span></span><span>, </span><span><span class="hljs-number">102</span></span><span>, </span><span><span class="hljs-number">103</span></span><span>, </span><span><span class="hljs-number">104</span></span><span>];

</span><span><span class="hljs-comment">// အဆိုပါခင်းကျင်းစတင်,所有အသုံးပြုသူ的购买数量为0</span></span><span>
</span><span><span class="hljs-variable">$order_data</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_fill_keys</span></span><span>(</span><span><span class="hljs-variable">$user_ids</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>);

</span><span><span class="hljs-comment">// 假设这是အသုံးပြုသူ购买商品的记录,每个数组项表示အသုံးပြုသူID၎င်း၏ဝယ်ယူအရေအတွက်</span></span><span>
</span><span><span class="hljs-variable">$purchases</span></span><span> = [
    [</span><span><span class="hljs-number">101</span></span><span>, </span><span><span class="hljs-number">3</span></span><span>],
    [</span><span><span class="hljs-number">102</span></span><span>, </span><span><span class="hljs-number">5</span></span><span>],
    [</span><span><span class="hljs-number">103</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>],
    [</span><span><span class="hljs-number">101</span></span><span>, </span><span><span class="hljs-number">1</span></span><span>],
    [</span><span><span class="hljs-number">104</span></span><span>, </span><span><span class="hljs-number">4</span></span><span>]
];

</span><span><span class="hljs-comment">// အသုံးပြု array_walk ထုတ်ယူအမိန့်ဒေတာ,更新အသုံးပြုသူ的购买数量</span></span><span>
</span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$purchases</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$purchase</span></span><span>) {
    </span><span><span class="hljs-variable">$user_id</span></span><span> = </span><span><span class="hljs-variable">$purchase</span></span><span>[</span><span><span class="hljs-number">0</span></span><span>];
    </span><span><span class="hljs-variable">$quantity</span></span><span> = </span><span><span class="hljs-variable">$purchase</span></span><span>[</span><span><span class="hljs-number">1</span></span><span>];

    </span><span><span class="hljs-comment">// 通过回调函数更新对应အသုံးပြုသူ的购买数量</span></span><span>
    </span><span><span class="hljs-title function_ invoke__">array_walk</span></span><span>(</span><span><span class="hljs-variable">$order_data</span></span><span>, function (&amp;</span><span><span class="hljs-variable">$value</span></span><span>, </span><span><span class="hljs-variable">$key</span></span><span>) </span><span><span class="hljs-keyword">use</span></span><span> ($</span><span><span class="hljs-title">user_id</span></span><span>, $</span><span><span class="hljs-title">quantity</span></span><span>) {
        </span><span><span class="hljs-title">if</span></span><span> ($</span><span><span class="hljs-title">key</span></span><span> == $</span><span><span class="hljs-title">user_id</span></span><span>) {
            $</span><span><span class="hljs-title">value</span></span><span> += $</span><span><span class="hljs-title">quantity</span></span><span>;
        }
    });
}

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

ထုတ်လုပ်မှု -

 <span><span>Array
(
    [</span><span><span class="hljs-meta">101</span></span><span>] =&gt; </span><span><span class="hljs-number">4</span></span><span>
    [</span><span><span class="hljs-meta">102</span></span><span>] =&gt; </span><span><span class="hljs-number">5</span></span><span>
    [</span><span><span class="hljs-meta">103</span></span><span>] =&gt; </span><span><span class="hljs-number">2</span></span><span>
    [</span><span><span class="hljs-meta">104</span></span><span>] =&gt; </span><span><span class="hljs-number">4</span></span><span>
)
</span></span>

4 ။ အကျဉ်းချုပ်

ဤဆောင်းပါးတွင် PHP တွင် Array_key_Keys နှင့် array_walk ကို မည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ဖော်ပြထားသည်။ Array_FEATE_KESS မှတစ်ဆင့်ကျွန်ုပ်တို့သည် fixed key names နှင့်အတူခင်းကျင်းမှုကိုလျင်မြန်စွာ ဖန်တီး. သော့တစ်ခုစီအတွက်တူညီသောကန ဦး တန်ဖိုးကိုသတ်မှတ်နိုင်သည်။ array_walk မှတဆင့်ကျွန်ုပ်တို့သည် Array ရှိ Element တစ်ခုစီကိုခင်းကျင်းမှုနှင့်အသုတ်ဖြစ်စဉ်တစ်ခုမှတစ်ဆင့်ဆက်သွယ်နိုင်သည်။

ဤလုပ်ဆောင်ချက်နှစ်ခုကိုပေါင်းစပ်ပြီးဒေတာများကိုအလွန်ထိထိရောက်ရောက်လုပ်ဆောင်နိုင်ပြီးအထူးသဖြင့်အချက်အလက်များကို အစပြု. မွမ်းမံရန်သို့မဟုတ်လုပ်ငန်းများ၌ပြုလုပ်ရန်အတွက်အခြေအနေများအတွက်သင့်တော်သည်။ အမိန့်အချက်အလက်များ၏အပြောင်းအလဲနဲ့ကဲ့သို့သောတိကျသောစီးပွားရေးရာ့ဖြစ်စဉ်များကိုချက်ချင်းသိရှိနိုင်ခြင်းအားဖြင့်၎င်းသည်စစ်မှန်သောစီမံကိန်းများတွင်ဤလုပ်ဆောင်မှုများကိုမည်သို့အသုံးပြုသည်ကိုပိုမိုနားလည်ရန်ကူညီနိုင်သည်။

  • သက်ဆိုင်သောတက်(ဂ်)များ:

    array_walk