လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> [strncmp function ကိုစာလုံးအကြီးအသေးပါသလား? PHP တွင် strncmp case sensitivity အတွက်ပြ problems နာများနှင့်ဖြေရှင်းနည်းများ]

[strncmp function ကိုစာလုံးအကြီးအသေးပါသလား? PHP တွင် strncmp case sensitivity အတွက်ပြ problems နာများနှင့်ဖြေရှင်းနည်းများ]

gitbox 2025-08-22

1 ။ strncmp function ကိုအခြေခံအသုံးပြုမှု

strncmp 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">$str1</span></span><span>, </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$str2</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>
  • $ str1 : ပထမ string ကို။

  • $ str2 : ဒုတိယ string ကို။

  • $ အရှည် - နှိုင်းယှဉ်ဖို့ဇာတ်ကောင်အရေအတွက်။

strncmp function ကို string နှစ်ခုအစမှစတင်သည်။ အရှည်ဆုံး စာလုံးများဖြင့်ဖြစ်သည်။ ၎င်းသည်အောက်ပါဖြစ်နိုင်သောတန်ဖိုးများကိုပြန်ပို့သည်။

  • 0 : ပထမ ဦး ဆုံး အရှည် ဇာတ်ကောင်တန်းတူဖြစ်ကြောင်းဆိုလိုသည်။

  • 0 ထက်ကြီးသည် - ဆိုလိုသည်မှာ $ str1 ၏ပထမ ဦး ဆုံး အရှည် ဇာတ်ကောင်သည် ဒေါ်လာ str2 ၏ပထမ ဦး ဆုံး အရှည် ဇာတ်ကောင်ထက်သာ။ ကြီးမြတ်သည်။

  • 0 ထက်နည်းသည် - ဆိုလိုသည်မှာ $ str1 ၏ပထမဆုံးအ ရှည် ဇာတ်ကောင်များသည် ဒေါ်လာ str2 ၏ပထမဆုံးအ ရှည် ဇာတ်ကောင်များထက်နည်းသည်ဟုဆိုလိုသည်။

2 ။ strncmp ကိစ္စတွင်အထိခိုက်မခံလား။

strncmp function သည် စာလုံးအကြီးအသေးအရေးပါ သည်။ ဆိုလိုသည်မှာသင်သည် "Hello" နှင့် "ဟဲလို" နှင့်နှိုင်းယှဉ်လျှင် "Hello" ကို strncmp နှင့်နှိုင်းယှဉ်လျှင် function သည်အတိအကျနှင့်အတူတူပင်ဖြစ်သည်ဟုယူဆရဆဲဖြစ်သည်။ အောက်ပါဥပမာကိုကြည့်ပါ။

 <span><span><span class="hljs-variable">$str1</span></span><span> = </span><span><span class="hljs-string">"hello"</span></span><span>;
</span><span><span class="hljs-variable">$str2</span></span><span> = </span><span><span class="hljs-string">"Hello"</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">$str1</span></span><span>, </span><span><span class="hljs-variable">$str2</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">"နှစ်ခု strings အတူတူပင်ဖြစ်ကြသည်"</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">"နှစ်ခု strings ကွဲပြားခြားနားဖြစ်ကြသည်"</span></span><span>;
}
</span></span>

output ကိုဖြစ်လိမ့်မည်:

 <span><span>နှစ်ခု strings ကွဲပြားခြားနားဖြစ်ကြသည်
</span></span>

"Hello" နှင့် "ဟဲလို" သည်အကြောင်းအရာများတွင်ကွဲပြားခြားနားမှုများရှိသည့်အမှုကိစ္စများသာရှိသည်

3 ။ အမှု sensitivity ၏ပြ problem နာကိုဘယ်လိုဖြေရှင်းမလဲ?

STRNCMP ကို ​​CASTITCMP နဲ့နှိုင်းယှဉ်တဲ့အခါကိစ္စကိုမခံစားနိုင်ရင် strncasecmp function ကိုသုံးနိုင်တယ်။ Strncasecmp သည်အမှုမခံစားနိုင်သောဗားရှင်းဖြစ်ပြီး၎င်း၏အသုံးပြုမှုသည် strncmp နှင့်ဆင်တူသည်။

 <span><span><span class="hljs-title function_ invoke__">strncasecmp</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$str1</span></span><span>, </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$str2</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>

strncasecmp လုပ်ဆောင်ချက်သည်ကြိုးနှစ်ချောင်း၏ပထမ ဦး ဆုံး အရှည်ကို နှိုင်းယှဉ်သောအခါကိစ္စရပ်ကွဲပြားမှုကိုလျစ်လျူရှုထားသည်။ ဥပမာများမှာအောက်ပါအတိုင်းဖြစ်သည် -

 <span><span><span class="hljs-variable">$str1</span></span><span> = </span><span><span class="hljs-string">"hello"</span></span><span>;
</span><span><span class="hljs-variable">$str2</span></span><span> = </span><span><span class="hljs-string">"Hello"</span></span><span>;

</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">strncasecmp</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">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">"နှစ်ခု strings အတူတူပင်ဖြစ်ကြသည်"</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">"နှစ်ခု strings ကွဲပြားခြားနားဖြစ်ကြသည်"</span></span><span>;
}
</span></span>

output ကိုဖြစ်လိမ့်မည်:

 <span><span>နှစ်ခု strings အတူတူပင်ဖြစ်ကြသည်
</span></span>

အပေါ်ကပြထားတဲ့အတိုင်း strncasecmp function က "Hello" နဲ့ "ဟဲလို" နဲ့ "ဟဲလို" နဲ့ "ဟဲလို" လို့ခေါ်တယ်။

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

  1. ကြိုးများကိုနှိုင်းယှဉ်သောအခါ strncmp function သည် စာလုံးအကြီးအသေးအရေးကြီးသည်

  2. အကယ်. သင်သည် အမှုန်မခံစားနိုင်သော နှိုင်းယှဉ်မှုများပြုလုပ်ရန်လိုအပ်ပါက strncasecmp function ကိုသုံးနိုင်သည်။

အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင် String နှိုင်းယှဉ်ချက်သည်မျှော်လင့်ချက်များနှင့်အညီသေချာစေရန်တိကျသောလိုအပ်ချက်များနှင့်အညီ strncmp သို့မဟုတ် strncasecmp ကို အသုံးပြုရန်ရွေးချယ်ရန်လိုအပ်သည်။ သုံးစွဲသူ input ကိုပြုပြင်ခြင်း, ပုံစံဒေတာသို့မဟုတ်ဒေတာဘေ့စ်စုံစမ်းမှုရလဒ်များပြုပြင်သည့်အခါဤလုပ်ဆောင်မှုများအကြားကွဲပြားခြားနားမှုများကိုနားလည်ရန်အထူးအရေးကြီးသည်။