လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> မလိုအပ်တဲ့ဇာတ်ကောင်နှိုင်းယှဉ်မှုကိုရှောင်ရှားရန် strncmp function ကိုအသုံးပြုနည်း။ PHP string နှိုင်းယှဉ်မှု၏ထိရောက်မှုကိုတိုးတက်စေရန်နည်းလမ်းများ]

မလိုအပ်တဲ့ဇာတ်ကောင်နှိုင်းယှဉ်မှုကိုရှောင်ရှားရန် strncmp function ကိုအသုံးပြုနည်း။ PHP string နှိုင်းယှဉ်မှု၏ထိရောက်မှုကိုတိုးတက်စေရန်နည်းလမ်းများ]

gitbox 2025-09-08

မလိုအပ်တဲ့ဇာတ်ကောင်နှိုင်းယှဉ်မှုကိုရှောင်ရှားရန် strncmp function ကိုအသုံးပြုနည်း။ PHP string နှိုင်းယှဉ်မှု၏ထိရောက်မှုကိုတိုးတက်စေရန်နည်းလမ်းများ]

PHP တွင် String နှိုင်းယှဉ်ခြင်းသည်အထူးသဖြင့်အချက်အလက်အမြောက်အများကိုပြုပြင်သည့်အခါ, ကျိုးကြောင်းဆီလျော်သောကြိုးနှင့်နှိုင်းယှဉ်မှုများသည်စွမ်းဆောင်ရည်ကိုအကျိုးသက်ရောက်စေမည့်မလိုအပ်သောဇာတ်ကောင်နှိုင်းယှဉ်မှုများဖြစ်ပေါ်စေနိုင်သည်။ စွမ်းဆောင်ရည်ရှိသည့် string နှိုင်းယှဉ်ကိရိယာတစ်ခုအနေဖြင့် PHP တွင် strncmp function ကိုကျွန်ုပ်တို့အားမလိုအပ်သောဇာတ်ကောင်နှိုင်းယှဉ်ချက်များကိုရှောင်ရှားရန်နှင့်ကုဒ်၏ကွပ်မျက်မှုစွမ်းဆောင်ရည်ကိုတိုးတက်စေရန်ကူညီနိုင်သည်။

1 ။ strncmp function ကဘာလဲ။

StrncMP သည် PHP တွင် string နှစ်ခု၏ပထမ ဦး ဆုံး N အက္ခရာများကိုနှိုင်းယှဉ်သော PHP တွင် built-in function တစ်ခုဖြစ်သည်။ ၎င်း၏အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -

 <span><span><span class="hljs-title function_ invoke__">strncmp</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$string1</span></span><span>, </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$string2</span></span><span>, </span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$length</span></span><span>): </span><span><span class="hljs-keyword">int</span></span><span>
</span></span>
  • $ string1 နှင့် $ string2 သည်နှိုင်းယှဉ်ရန်ကြိုးနှစ်ချောင်းရှိသည်။

  • $ အရှည် နှိုင်းယှဉ်ခံရဖို့ဇာတ်ကောင်၏အရှည်ဖြစ်ပါတယ်။ ပထမ ဦး ဆုံး $ အရှည် အက္ခရာများကိုနှိုင်းယှဉ်ပါလိမ့်မည်။

ဒီ function ကပြန်လာတဲ့တန်ဖိုးကိုအောက်ပါအတိုင်းဖြစ်နိုင်တယ်။

  • အကယ်. $ string1 သည် ဒေါ်လာ string2 ထက်နည်းပါက 0 ငထက်နည်းသောကိန်းဂဏန်းတစ်ခုသို့ပြန်သွားသည်။

  • အကယ်. $ string1 သည် $ string2 နှင့်ညီသည်ဆိုပါစို့။

  • အကယ်. $ string1 သည် ဒေါ်လာ string2 ထက်ကြီးပါက 0 ထက်ကြီးမြတ်သည့်ကိန်းဂဏန်းတစ်ခုသို့ပြန်ပို့သည်။

2 ။ မလိုအပ်သောဇာတ်ကောင်နှိုင်းယှဉ်မှုကိုမည်သို့ရှောင်ရှားနိုင်သနည်း။

PHP တွင် string နှိုင်းယှဉ်မှု function များသည် strcmp နှင့် strncmp ဖြစ်သည်။ StrcMP သည် ဇာတ်ကောင်နှစ်မျိုးရှိဇာတ်ကောင်နှစ်မျိုးနှင့်ကွဲပြားခြားနားသောဇာတ်ကောင်ကိုတွေ့သည်အထိဇာတ်ကောင်နှစ်မျိုးစီကိုစရိုက်ဖြင့်နှိုင်းယှဉ်ရန်ဖြစ်သည်။ ကြိုးနှစ်ချောင်း၏အရှည်များသည်ကွဲပြားခြားနားပါက strcmp သည် နှိုင်းယှဉ်မှုပြီးဆုံးသည်အထိ StrcMP သည်ကျန်ရှိနေသောဇာတ်ကောင်များကိုနှိုင်းယှဉ်။ နှင့်နှိုင်းယှဉ်ပါလိမ့်မည်။ ဤချဉ်းကပ်မှုသည်ကြီးမားသောအချက်အလက်များကိုပြုပြင်သည့်အခါစွမ်းဆောင်ရည်ပြ problems နာများကိုဖြစ်ပေါ်စေနိုင်သည်။

ပြီးတော့ StrncMP က ကျွန်တော်တို့ကိုဇာတ်ကောင်အရှည်ကိုနှိုင်းယှဉ်ရန်ခွင့်ပြုသည်, ဤနည်းအားဖြင့်ကျွန်ုပ်တို့သည်ပထမစာလုံးအနည်းငယ်ကိုသာမိတ္တူကူးနိုင်သည့်အစိတ်အပိုင်းများကိုမနှိုင်းယှဉ်ဘဲနှိုင်းယှဉ်ခြင်းမရှိဘဲမလိုအပ်သောဇာတ်ကောင်နှိုင်းယှဉ်ချက်များကိုလျှော့ချခြင်းမရှိဘဲထိရောက်စွာနှိုင်းယှဉ်ပါမည်။

3 ။ strncmp ၏လက်တွေ့ကျတဲ့လျှောက်လွှာ

3.1 string ရှေ့ဆက်နှိုင်းယှဉ်အတွက်လျှောက်လွှာ

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

 <span><span><span class="hljs-variable">$string1</span></span><span> = </span><span><span class="hljs-string">"applepie"</span></span><span>;
</span><span><span class="hljs-variable">$string2</span></span><span> = </span><span><span class="hljs-string">"applejuice"</span></span><span>;

</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">strncmp</span></span><span>(</span><span><span class="hljs-variable">$string1</span></span><span>, </span><span><span class="hljs-variable">$string2</span></span><span>, </span><span><span class="hljs-number">5</span></span><span>) === </span><span><span class="hljs-number">0</span></span><span>) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"တူညီသောရှေ့ဆက်\n"</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">"ကွဲပြားခြားနားသောရှေ့ဆက်\n"</span></span><span>;
}
</span></span>

ဤဥပမာတွင် strncmp သည် ပထမစာလုံး 5 လုံး (i.e. "Apple") ကိုသာနှိုင်းယှဉ်သည်။ ဤသို့ပြုလုပ်ခြင်းသည်မလိုအပ်သောနှိုင်းယှဉ်မှုလုပ်ငန်းများသိမ်းဆည်းခြင်းနှင့်စွမ်းဆောင်ရည်ကိုတိုးတက်စေသည်။

3.2 applications ဖိုင်များလမ်းကြောင်းများပြုလုပ်သောအခါ

ဖိုင်လမ်းကြောင်းများသို့မဟုတ် URL များကိုလုပ်ဆောင်သောအခါလမ်းကြောင်းများသို့မဟုတ်ဒိုမိန်းအမည်များ၏ရှေ့ဆက်များ၏ရှေ့ဆက်များကိုတသမတ်တည်းဆုံးဖြတ်ရန်မကြာခဏလိုအပ်သည်။ URL နှစ်ခုသည် domain name တစ်ခုတည်းနှင့်သက်ဆိုင်ခြင်းရှိ, မရှိဆုံးဖြတ်ရန်လိုအပ်သည်ဆိုပါစို့။ ဒိုမိန်းအမည်အပိုင်းကိုသာနှိုင်းယှဉ်ရန် strncmp ကို သုံးနိုင်သည်ဆိုပါစို့။

 <span><span><span class="hljs-variable">$url1</span></span><span> = </span><span><span class="hljs-string">"https://www.example.com/page1"</span></span><span>;
</span><span><span class="hljs-variable">$url2</span></span><span> = </span><span><span class="hljs-string">"https://www.example.com/page2"</span></span><span>;

</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">strncmp</span></span><span>(</span><span><span class="hljs-variable">$url1</span></span><span>, </span><span><span class="hljs-variable">$url2</span></span><span>, </span><span><span class="hljs-number">23</span></span><span>) === </span><span><span class="hljs-number">0</span></span><span>) { </span><span><span class="hljs-comment">// နှိုင်းယှဉ်ခြင်းမပြုမီ 23 ဇာတ်ကောင်</span></span><span>
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ဒိုမိန်းအမည်သည်အတူတူဖြစ်သည်\n"</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">"ကွဲပြားခြားနားသောဒိုမိန်းအမည်\n"</span></span><span>;
}
</span></span>

ဤဥပမာတွင်ကျွန်ုပ်တို့သည် domain name အပိုင်း (I.E. ဇာတ်ကောင် 23 ဇာတ်ကောင်) ကိုသာနှိုင်းယှဉ်ခြင်းနှင့်မလိုအပ်သောဇာတ်ကောင်နှိုင်းယှဉ်ခြင်းကိုရှောင်ရှားနိုင်သည်။

3.3 Big Data စုဆောင်းမှုတွင်လျှောက်လွှာ

string data အမြောက်အများကိုခွဲခြားရန်သို့မဟုတ်စစ်ထုတ်ရန်လိုအပ်သည့်အခါ strncmp ကို အသုံးပြုခြင်းနှင့်နှိုင်းယှဉ်လျှင်ဇာတ်ကောင်အရေအတွက်ကိုထိထိရောက်ရောက်လျှော့ချနိုင်ပြီးထိရောက်မှုကိုတိုးတက်စေသည်။ အထူးသဖြင့်အချက်အလက်အမြောက်အများပါ 0 င်သော 0 က်ဘ်အပလီကေးရှင်းများတွင် strncmp ၏ဆင်ခြင်တုံတရားအသုံးပြုခြင်းသည်အစီအစဉ်၏ကွပ်မျက်မှုစွမ်းဆောင်ရည်ကိုပိုမိုကောင်းမွန်စေလိမ့်မည်။

4 ။ strcmp နှင့်နှိုင်းယှဉ်ပါ

strncmp နှင့် strcmp နှစ်ခုစလုံးကိုနှိုင်းယှဉ်မှုများအတွက်အသုံးပြုသည်။ သို့သော်၎င်းတို့အကြားသိသာထင်ရှားသောကွဲပြားခြားနားမှုအချို့ရှိသည်။

  • StrcMP သည် ကြိုးနှစ်ချောင်းရှိသောအက္ခရာများအားလုံးကိုမတူညီသောစာလုံးများကိုတွေ့သည်အထိသို့မဟုတ်အဆုံးသတ်သည်အထိနှိုင်းယှဉ်ထားသည်။

  • strncmp သည် နှိုင်းယှဉ်ရန်အက်ခရာအရေအတွက်ကိုသတ်မှတ်နိုင်သည်, မလိုအပ်သောဇာတ်ကောင်နှိုင်းယှဉ်ချက်များကိုရှောင်ရှားရန်နှင့်ပိုမိုတိကျသောထိန်းချုပ်မှုကိုရှောင်ရှားနိုင်သည်။

ဥပမာအားဖြင့်ပထမစာလုံး 10 လုံးကိုကြိုးနှစ်ချောင်းကိုနှိုင်းယှဉ်ကြည့်ပါ။

 <span><span><span class="hljs-variable">$str1</span></span><span> = </span><span><span class="hljs-string">"abcdefghijklmnopqrstuvwxyz"</span></span><span>;
</span><span><span class="hljs-variable">$str2</span></span><span> = </span><span><span class="hljs-string">"abcxyz"</span></span><span>;

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">strcmp</span></span><span>(</span><span><span class="hljs-variable">$str1</span></span><span>, </span><span><span class="hljs-variable">$str2</span></span><span>);  </span><span><span class="hljs-comment">// ဇာတ်ကောင်အားလုံးနှိုင်းယှဉ်ဖို့ဆက်လက်,ခြားနားချက်ကိုတွေ့သည်အထိ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">strncmp</span></span><span>(</span><span><span class="hljs-variable">$str1</span></span><span>, </span><span><span class="hljs-variable">$str2</span></span><span>, </span><span><span class="hljs-number">6</span></span><span>); </span><span><span class="hljs-comment">// 只နှိုင်းယှဉ်ခြင်းမပြုမီ 6 ဇာတ်ကောင်</span></span><span>
</span></span>

StrncMP ကို အသုံးပြုခြင်းသည် strcmp ထက်ပိုမိုထိရောက်စေသည်။ အထူးသဖြင့် string တစ်ခု၏ပထမဂဏန်းအနည်းငယ်ကိုသာဂရုစိုက်သည့်အခါ

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

PHP ပရိုဂရမ်တွင် crosing နှိုင်းယှဉ်ခြင်းလုပ်ဆောင်ချက်များကိုရွေးချယ်ခြင်းသည် code chinitive တိုးတက်စေရန်နှင့်မလိုအပ်သောတွက်ချက်မှုများကိုပိုမိုတိုးတက်စေရန်အတွက်ပြင်ဆင်မှုဖြင့်ရွေးချယ်ခြင်းသည်ကူညီနိုင်သည်။ strncmp function သည် Prefix နှိုင်းယှဉ်ချက်, ဖိုင်လမ်းကြောင်းနှိုင်းယှဉ်ခြင်း, URL နှိုင်းယှဉ်ချက်များနှင့်အခြားအခြေအနေများအတွက်အထူးသဖြင့်သင့်လျော်သည်။ ဇာတ်ကောင်အရေအတွက်ကိုနှိုင်းယှဉ်ရန်နှင့်နှိုင်းယှဉ်ရန်အတွက်မလိုအပ်သောဇာတ်ကောင်နှိုင်းယှဉ်ချက်များကိုကျွန်ုပ်တို့ရှောင်ရှားနိုင်ပြီးအစီအစဉ်၏စွမ်းဆောင်ရည်ကိုတိုးတက်စေနိုင်သည်။ ထိရောက်သော string နှိုင်းယှဉ်မှုများလိုအပ်သည့်အခြေအနေများအတွက် strncmp သည်အလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သည်မှာသေချာသည်။