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>] => </span><span><span class="hljs-number">0</span></span><span>
[</span><span><span class="hljs-meta">banana</span></span><span>] => </span><span><span class="hljs-number">0</span></span><span>
[</span><span><span class="hljs-meta">cherry</span></span><span>] => </span><span><span class="hljs-number">0</span></span><span>
)
</span></span>
ဤဥပမာသည် $ သော့များခင်း ကျင်းမှုမှ array ၏သော့အမည်ရှိ array အသစ်တစ်ခုကိုဖန်တီးသည်။ သော့တစ်ခုစီ၏တန်ဖိုးသည် 0 ဖြစ်သည်။
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> &</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> => </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-string">'banana'</span></span><span> => </span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-string">'cherry'</span></span><span> => </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 (&</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>] => </span><span><span class="hljs-number">4</span></span><span>
[</span><span><span class="hljs-meta">banana</span></span><span>] => </span><span><span class="hljs-number">6</span></span><span>
[</span><span><span class="hljs-meta">cherry</span></span><span>] => </span><span><span class="hljs-number">8</span></span><span>
)
</span></span>
ဤဥပမာတွင် array_walk သည် element တစ်ခုစီကိုခင်းကျင်းခြင်းနှင့်တစ်ခုချင်းစီ၏တန်ဖိုးကို 2 ဖြင့်မြှောက်လိမ့်မည်။
အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ဤတန်ဖိုးများကိုအသုတ်မဆိုမီပြင်ဆင်ထားသောတန်ဖိုးများနှင့်အတူခင်းကျင်းသောတန်ဖိုးများနှင့်အတူခင်းကျင်းမှုကိုအစပြုရန်မကြာခဏလိုအပ်သည်။ ကျွန်ုပ်တို့သည်ဤလိုအပ်ချက်ကို 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 (&</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>] => </span><span><span class="hljs-number">4</span></span><span>
[</span><span><span class="hljs-meta">102</span></span><span>] => </span><span><span class="hljs-number">5</span></span><span>
[</span><span><span class="hljs-meta">103</span></span><span>] => </span><span><span class="hljs-number">2</span></span><span>
[</span><span><span class="hljs-meta">104</span></span><span>] => </span><span><span class="hljs-number">4</span></span><span>
)
</span></span>
ဤဆောင်းပါးတွင် PHP တွင် Array_key_Keys နှင့် array_walk ကို မည်သို့အသုံးပြုရမည်ကိုအသေးစိတ်ဖော်ပြထားသည်။ Array_FEATE_KESS မှတစ်ဆင့်ကျွန်ုပ်တို့သည် fixed key names နှင့်အတူခင်းကျင်းမှုကိုလျင်မြန်စွာ ဖန်တီး. သော့တစ်ခုစီအတွက်တူညီသောကန ဦး တန်ဖိုးကိုသတ်မှတ်နိုင်သည်။ array_walk မှတဆင့်ကျွန်ုပ်တို့သည် Array ရှိ Element တစ်ခုစီကိုခင်းကျင်းမှုနှင့်အသုတ်ဖြစ်စဉ်တစ်ခုမှတစ်ဆင့်ဆက်သွယ်နိုင်သည်။
ဤလုပ်ဆောင်ချက်နှစ်ခုကိုပေါင်းစပ်ပြီးဒေတာများကိုအလွန်ထိထိရောက်ရောက်လုပ်ဆောင်နိုင်ပြီးအထူးသဖြင့်အချက်အလက်များကို အစပြု. မွမ်းမံရန်သို့မဟုတ်လုပ်ငန်းများ၌ပြုလုပ်ရန်အတွက်အခြေအနေများအတွက်သင့်တော်သည်။ အမိန့်အချက်အလက်များ၏အပြောင်းအလဲနဲ့ကဲ့သို့သောတိကျသောစီးပွားရေးရာ့ဖြစ်စဉ်များကိုချက်ချင်းသိရှိနိုင်ခြင်းအားဖြင့်၎င်းသည်စစ်မှန်သောစီမံကိန်းများတွင်ဤလုပ်ဆောင်မှုများကိုမည်သို့အသုံးပြုသည်ကိုပိုမိုနားလည်ရန်ကူညီနိုင်သည်။
သက်ဆိုင်သောတက်(ဂ်)များ:
array_walk