<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// ဤဆောင်းပါးသည်ဥပမာအားဖြင့်ဆောင်းပါးအကြောင်းအရာများကိုသာဓကများသာဖြစ်သည်,အမှန်တကယ်ယုတ္တိဗေဒပါ 0 င်ပတ်သက်ခြင်းမရှိပါ</span></span><span>
</span><span><span class="hljs-comment">// --------------------------- ဖတ်စာ ---------------------------</span></span><span>
</span><span><span class="hljs-meta">?></span></span><span>
<h1>အဲဒါကိုဘယ်လိုသုံးရမလဲ array_keys Array keys တွင်မိတ္တူပါအမှားအယွင်းများကိုရှောင်ပါ?PHP အသစ်များအတွက်မကြာခဏမေးသောမေးခွန်းများ</h1>
<p>တည်နေ PHP အလယ်ပိုင်း,Array များသည်အလွန်ပြောင်းလွယ်ပြင်လွယ်ဒေတာတည်ဆောက်ပုံများဖြစ်သည်,သော့နှင့်တန်ဖိုးများကိုတစ်ချိန်တည်းတွင်သိမ်းဆည်းနိုင်သည်。မည်မှျပင်,အသစ်များမကြာခဏကြုံတွေ့ရသောပြ a နာတစ်ခုဖြစ်ပါတယ်:当你တည်နေ数组အလယ်ပိုင်း不小心定义了重复的键,နောက်ပိုင်းတွင်သတ်မှတ်ထားသောတန်ဖိုးသည်ယခင်တန်ဖိုးကို overwrite လိမ့်မည်,ဒေတာဆုံးရှုံးမှုသို့မဟုတ်ယုတ္တိအမှားများကိုဖြစ်ပေါ်စေသည်。</p>
<h2>ခင်းကျင်းသော့များ၏ပုံတူ၏ဘုံအခြေအနေများ</h2>
<p>ရိုးရှင်းတဲ့ဥပမာတစ်ခုပေးပါ:</p>
<pre><code </span><span><span class="hljs-class"><span class="hljs-keyword">class</span></span></span><span>="</span><span><span class="hljs-title">language</span></span><span>-</span><span><span class="hljs-title">php</span></span><span>">
$</span><span><span class="hljs-title">data</span></span><span> = [
"</span><span><span class="hljs-title">id</span></span><span>" => 1,
"</span><span><span class="hljs-title">name</span></span><span>" => "</span><span><span class="hljs-title">Alice</span></span><span>",
"</span><span><span class="hljs-title">id</span></span><span>" => 2
];
</span><span><span class="hljs-title">print_r</span></span><span>($</span><span><span class="hljs-title">data</span></span><span>);
</</span><span><span class="hljs-title">code</span></span><span>></</span><span><span class="hljs-title">pre</span></span><span>>
<</span><span><span class="hljs-title">p</span></span><span>>ပြေးပြီးနောက်,数组အလယ်ပိုင်း只会保留最后一次的 <</span><span><span class="hljs-title">code</span></span><span>>"</span><span><span class="hljs-title">id</span></span><span>" => 2</</span><span><span class="hljs-title">code</span></span><span>>,ငါကပထမ ဦး ဆုံးအကြိမ်ငါသတ်မှတ် <</span><span><span class="hljs-title">code</span></span><span>>"</span><span><span class="hljs-title">id</span></span><span>" => 1</</span><span><span class="hljs-title">code</span></span><span>> ဖုံးလွှမ်းထားသည်。</</span><span><span class="hljs-title">p</span></span><span>>
<</span><span><span class="hljs-title">h2</span></span><span>>ဘယ်လိုသုံးရမလဲ </span><span><span class="hljs-title">array_keys</span></span><span> ထပ်ခလုတ်ကိုစစ်ဆေးပါ?</</span><span><span class="hljs-title">h2</span></span><span>>
<</span><span><span class="hljs-title">p</span></span><span>><</span><span><span class="hljs-title">code</span></span><span>></span><span><span class="hljs-title">array_keys</span></span><span>()</</span><span><span class="hljs-title">code</span></span><span>> 函数可以返回数组အလယ်ပိုင်း所有键组成的新数组,ထပ်ခါတလဲလဲသော့တွေရှိတယ်ဆိုတာကိုရှာဖွေဖို့ကျွန်တော်တို့သုံးနိုင်တယ်。</</span><span><span class="hljs-title">p</span></span><span>>
<</span><span><span class="hljs-title">pre</span></span><span>><</span><span><span class="hljs-title">code</span></span><span> </span><span><span class="hljs-title">class</span></span><span>="</span><span><span class="hljs-title">language</span></span><span>-</span><span><span class="hljs-title">php</span></span><span>">
$</span><span><span class="hljs-title">data</span></span><span> = [
"</span><span><span class="hljs-title">id</span></span><span>" => 1,
"</span><span><span class="hljs-title">name</span></span><span>" => "</span><span><span class="hljs-title">Alice</span></span><span>",
"</span><span><span class="hljs-title">id</span></span><span>" => 2
];
$</span><span><span class="hljs-title">keys</span></span><span> = </span><span><span class="hljs-title">array_keys</span></span><span>($</span><span><span class="hljs-title">data</span></span><span>);
// စာရင်းအင်းသော့များ၏ဖြစ်ပျက်မှုအရေအတွက်
$</span><span><span class="hljs-title">keyCounts</span></span><span> = </span><span><span class="hljs-title">array_count_values</span></span><span>($</span><span><span class="hljs-title">keys</span></span><span>);
// ထပ်တူသော့များကိုရှာပါ
$</span><span><span class="hljs-title">duplicates</span></span><span> = </span><span><span class="hljs-title">array_filter</span></span><span>($</span><span><span class="hljs-title">keyCounts</span></span><span>, </span><span><span class="hljs-title">function</span></span><span>($</span><span><span class="hljs-title">count</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-variable">$count</span></span><span> > </span><span><span class="hljs-number">1</span></span><span>;
});
</span><span><span class="hljs-keyword">if</span></span><span> (!</span><span><span class="hljs-keyword">empty</span></span><span>(</span><span><span class="hljs-variable">$duplicates</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ထပ်တူသော့များကိုရှာဖွေပါ: "</span></span><span> . </span><span><span class="hljs-title function_ invoke__">implode</span></span><span>(</span><span><span class="hljs-string">", "</span></span><span>, </span><span><span class="hljs-title function_ invoke__">array_keys</span></span><span>(</span><span><span class="hljs-variable">$duplicates</span></span><span>));
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"မိတ္တူပွားများရှာမတွေ့ပါ"</span></span><span>;
}
ဤနည်းအားဖြင့်နောက်ဆက်တွဲဒေတာ overwrites များကိုရှောင်ရှားရန်အစီအစဉ်၏ယုတ္တိဗေဒဆိုင်ရာပုံတူပွားများရှိသော့မိတ္တူပြ problem နာများကိုလျင်မြန်စွာရှာဖွေတွေ့ရှိနိုင်သည်။
PHPG စတင်သူများသည် array keyslay ကိုလျစ်လျူရှုထားလေ့ရှိသော်လည်း Array_keys ကဲ့သို့သောလုပ်ဆောင်ချက်များကိုအသုံးပြုခြင်းသည် encoding process တွင်အမှားအယွင်းများကိုရှောင်ရှားနိုင်သည်။ ကောင်းမွန်သောအလေ့အကျင့်မှာ code ကိုရေးပြီးလိုအပ်သည့်အခါစစ်ဆေးရန်နှင့်လိုအပ်သည့်အခါစစ်ဆေးရန်အတွက်ခင်းကျင်းဖွဲ့စည်းပုံကိုရှင်းရှင်းလင်းလင်းထားရန်ဖြစ်သည်။
သက်ဆိုင်သောတက်(ဂ်)များ:
array_keys