PHP တွင်စွမ်းဆောင်ရည်ကောင်းမွန်မှုသည် developer များအမြဲတမ်းအာရုံစိုက်ထားပြီးအထူးသဖြင့်အချက်အလက်အမြောက်အများကိုပြုပြင်သည့်အခါမှန်ကန်သောဒေတာအပြောင်းအလဲနဲ့နည်းလမ်းကိုရွေးချယ်ခြင်းသည်အထူးအရေးကြီးသည်။ array_change_key_key_case () နှင့် foreach traversal သည် PHP တွင်အသုံးပြုသော warray traversal များကို PHP တွင်အသုံးပြုသည်။ ကွဲပြားခြားနားသောအခြေအနေများတွင်ကွဲပြားခြားနားသောစွမ်းဆောင်ရည်ကွဲပြားခြားနားမှုများကိုပြသနိုင်သည်။ ဒီတော့နှစ်ခုအကြားထိရောက်မှုကွာခြားချက်များကိုအကဲဖြတ်ရန်ဘယ်လို? ဒီဆောင်းပါးမှာ spl_object_id () ကို ဘယ်လိုသုံးရမလဲဆိုတာဆွေးနွေးပါလိမ့်မယ်။
Array_change_Key_Key_case () သည် PHP တွင် built-in function တစ်ခုဖြစ်သည်။ ဤလုပ်ဆောင်ချက်သည် parameters နှစ်ခုကိုလက်ခံသည်။
<span><span><span class="hljs-title function_ invoke__">array_change_key_case</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">int</span></span><span> </span><span><span class="hljs-variable">$case</span></span><span> = CASE_LOWER): </span><span><span class="hljs-keyword">array</span></span><span>
</span></span>
$ array : ပြောင်းလဲခံရဖို့သော့ချက်အမည်များတစ်ခုခင်းကျင်း။
$ အမှု - ပြောင်းလဲခြင်းနည်းလမ်းကိုသတ်မှတ်ပါ။ Case_lower သည် သော့အမည်ကိုစာလုံးအသေးအဖြစ်ပြောင်းလဲလိမ့်မည် ။
ဒီ function ဟာ array အသစ်တစ်ခုကိုပြန်ပို့ပေးပြီးမူရင်းခင်းကျင်းမှုကိုပြုပြင်မွမ်းမံခြင်းမရှိပါ။
foreach သည် PHP တွင်အသုံးများသော straversal ဖွဲ့စည်းပုံဖြစ်သည်။ ၎င်းသည်ခင်းကျင်းမှုတစ်ခုစီကို pointer မှာယူသည်။ အခြေခံအသုံးပြုမှုမှာအောက်ပါအတိုင်းဖြစ်သည် -
<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">$key</span></span><span> => </span><span><span class="hljs-variable">$value</span></span><span>) {
</span><span><span class="hljs-comment">// Array ဒြပ်စင်များတွင်လည်ပတ်ပါ</span></span><span>
}
</span></span>
Forach သည် PHP တွင်အပြင်းအထန်လုပ်ဆောင်နိုင်သည့် traversal နည်းလမ်းများအနက်မှတစ်ခုဖြစ်သည်။
array_change_key_key_Key_case () traversal တို့အကြားစွမ်းဆောင်ရည်ကွဲပြားခြားနားမှုများကိုနှိုင်းယှဉ်ရန်ကျွန်ုပ်တို့သည် spl_object_ID () ကို သုံး . ခု၏မှတ်ဥာဏ်ကိုကြည့်ရှုရန် spl_object_ID () ကို သုံးနိုင်သည်။ PHP တွင် spl_object_ID () သည်အရာဝတ်ထုတစ်ခုအတွက်ထူးခြားသောအမှတ်အသားကိုပြန်ပို့ရန်အသုံးပြုသည်။ OFF အရာဝတ်ထု IDs များကိုခွဲစိတ်ကုသမှုမတိုင်မီနှင့်အပြီးများအပေါ်နှိုင်းယှဉ်ခြင်းအားဖြင့်မှတ်ဥာဏ်ပြောင်းလဲခြင်းကိုကျွန်ုပ်တို့ခန့်မှန်းနိုင်သည်။
Array_change_key_Key_case_case () နှင့် forraach array robss များတွင် array အရာဝတ်ထုများတွင်လုပ်ကိုင်သည်။ ဤနည်းလမ်းနှစ်မျိုး၏ထိရောက်မှုကိုအကဲဖြတ်ရန်ကျွန်ုပ်တို့သည်အရာဝတ်ထု၏အပြောင်းအလဲများကိုကြည့်ရှုရန်ကွပ်မျက်ခြင်းမပြုမီနှင့်ပြီးနောက် spl_object_id () ကို သုံးနိုင်သည်။
နမူနာကုဒ်သည်အောက်ပါအတိုင်းဖြစ်သည် -
<span><span><span class="hljs-comment">// ဒေတာကိုစမ်းသပ်</span></span><span>
</span><span><span class="hljs-variable">$array</span></span><span> = [</span><span><span class="hljs-string">'One'</span></span><span> => </span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-string">'Two'</span></span><span> => </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-string">'Three'</span></span><span> => </span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-string">'Four'</span></span><span> => </span><span><span class="hljs-number">4</span></span><span>];
</span><span><span class="hljs-comment">// အသုံးပြု spl_object_id() စစ်ဆင်ရေးမတိုင်မီ Array အရာဝတ်ထုကိုစစ်ဆေးပါ ID</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Before array_change_key_case() ID: "</span></span><span> . </span><span><span class="hljs-title function_ invoke__">spl_object_id</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>) . PHP_EOL;
</span><span><span class="hljs-variable">$newArray</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_change_key_case</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>, CASE_LOWER);
</span><span><span class="hljs-comment">// အသုံးပြု spl_object_id() စစ်ဆင်ရေးပြီးနောက်ခင်းကျင်းအရာဝတ်ထုကိုစစ်ဆေးပါ ID</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"After array_change_key_case() ID: "</span></span><span> . </span><span><span class="hljs-title function_ invoke__">spl_object_id</span></span><span>(</span><span><span class="hljs-variable">$newArray</span></span><span>) . PHP_EOL;
</span><span><span class="hljs-keyword">echo</span></span><span> PHP_EOL;
</span><span><span class="hljs-comment">// အသုံးပြု foreach အဆိုပါခင်းကျင်းမှတဆင့်ကြားမှာ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Before foreach() ID: "</span></span><span> . </span><span><span class="hljs-title function_ invoke__">spl_object_id</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>) . PHP_EOL;
</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">$key</span></span><span> => </span><span><span class="hljs-variable">$value</span></span><span>) {
</span><span><span class="hljs-comment">// taversal စစ်ဆင်ရေး</span></span><span>
}
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"After foreach() ID: "</span></span><span> . </span><span><span class="hljs-title function_ invoke__">spl_object_id</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>) . PHP_EOL;
</span></span>
အထက်ဖော်ပြပါကုဒ်များမှတွေ့နိုင်သည်ကို array_change_key_Key_case () သည် Orray array အရာဝတ်ထုကိုပြုပြင်မွမ်းမံမည့်အစားခင်းကျင်းသောအရာဝတ်ထုအသစ်တစ်ခုကိုဖန်တီးနိုင်သည်။ ဤအချက်က array_change_key_Key_case () သည် မူရင်းခင်းကျင်းမှုကိုကူးယူလိမ့်မည်ဟုညွှန်ပြပြီး,
အတော်လေးပြောရလျှင်, foreach traversal သည် array ၏ element တစ်ခုစီကိုလုပ်ဆောင်သည်။ Array အသစ်တစ်ခုကိုမဖန်တီးနိုင်ပါ။
နှစ် ဦး စလုံး၏ထိရောက်မှုကိုပိုမိုပြည့်စုံစွာအကဲဖြတ်ရန်, Microtime (Trust) ကို ကွပ်မျက်ချိန်တိုင်းတာရန်အသုံးပြုနိုင်သည်။ ဤတွင်ရိုးရှင်းသောစွမ်းဆောင်ရည်နှိုင်းယှဉ်ခြင်းဥပမာတစ်ခုဖြစ်သည်။
<span><span><span class="hljs-comment">// ဒေတာကိုစမ်းသပ်</span></span><span>
</span><span><span class="hljs-variable">$array</span></span><span> = </span><span><span class="hljs-title function_ invoke__">range</span></span><span>(</span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-number">100000</span></span><span>);
</span><span><span class="hljs-comment">// တိုင်းတာခြင်း array_change_key_case() ပြပဲှ</span></span><span>
</span><span><span class="hljs-variable">$start</span></span><span> = </span><span><span class="hljs-title function_ invoke__">microtime</span></span><span>(</span><span><span class="hljs-literal">true</span></span><span>);
</span><span><span class="hljs-variable">$newArray</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_change_key_case</span></span><span>(</span><span><span class="hljs-variable">$array</span></span><span>, CASE_UPPER);
</span><span><span class="hljs-variable">$end</span></span><span> = </span><span><span class="hljs-title function_ invoke__">microtime</span></span><span>(</span><span><span class="hljs-literal">true</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"array_change_key_case() ကွပ်မျက်အချိန်: "</span></span><span> . (</span><span><span class="hljs-variable">$end</span></span><span> - </span><span><span class="hljs-variable">$start</span></span><span>) . </span><span><span class="hljs-string">" စက်ဏန့်"</span></span><span> . PHP_EOL;
</span><span><span class="hljs-comment">// တိုင်းတာခြင်း foreach 遍历ပြပဲှ</span></span><span>
</span><span><span class="hljs-variable">$start</span></span><span> = </span><span><span class="hljs-title function_ invoke__">microtime</span></span><span>(</span><span><span class="hljs-literal">true</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">$key</span></span><span> => </span><span><span class="hljs-variable">$value</span></span><span>) {
</span><span><span class="hljs-comment">// taversal စစ်ဆင်ရေး</span></span><span>
}
</span><span><span class="hljs-variable">$end</span></span><span> = </span><span><span class="hljs-title function_ invoke__">microtime</span></span><span>(</span><span><span class="hljs-literal">true</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"foreach() ကွပ်မျက်အချိန်: "</span></span><span> . (</span><span><span class="hljs-variable">$end</span></span><span> - </span><span><span class="hljs-variable">$start</span></span><span>) . </span><span><span class="hljs-string">" စက်ဏန့်"</span></span><span> . PHP_EOL;
</span></span>
SPL_OBJET_ID () မှမှတ်ဉာဏ်အပြောင်းအလဲများကိုကြည့်ခြင်းအားဖြင့်,
array_change_key_key_case () သည် ခင်းကျင်းမှုအသစ်တစ်ခုကိုဖန်တီးလိမ့်မည်။
foreach traversal သည် array ၏ element တိုင်းတွင်ပါ 0 င်သည်။
ထို့ကြောင့် fonteach သည် ကြီးမားသောအချက်အလက်များလုပ်ဆောင်သည့်အခါ array_change_key_key_case_case () ထက် ပို. ထိရောက်မှုရှိသည်။ array key names ၏အမှုကိစ္စကိုပြောင်းလဲရန်လိုအပ်ပါကစွမ်းဆောင်ရည်လိုအပ်ချက်များနှင့်အတူအခြေအနေများတွင် array_change_key_key_case () ကို အသုံးပြုခြင်းကိုရှောင်ရှားရန်အကြံပြုသည်။