အချည်းနှီးသော string တစ်ခုသည်အထူးသဖြင့်အထူးကြိုးတစ်ခုဖြစ်သည်။ strncmp ကိုအသုံးပြုပြီးကြိုးနှစ်ချောင်းကိုနှိုင်းယှဉ်သောအခါအချည်းနှီးသော string တစ်ခု၏တည်ရှိမှုသည်အထူးသဖြင့်အောက်ပါအခြေအနေများတွင်နှိုင်းယှဉ်မှု၏ရလဒ်များကိုအကျိုးသက်ရောက်နိုင်သည်။
တစ် ဦး က string ကိုဗလာဖြစ်ပါတယ် strncmp သည် အခြားအချည်းနှီးသောကြိုးများဖြင့်အချည်းနှီးသော string များကိုနှိုင်းယှဉ်ရန်အသုံးပြုသည်ဆိုပါက Return Value သည်အမိန့်တွင်အချည်းနှီးသောကြိုးများထက်သေးငယ်သည့်အရာများထက်သေးငယ်သည်ဟုယူဆရသည်။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">strncmp</span></span><span>(</span><span><span class="hljs-string">''</span></span><span>, </span><span><span class="hljs-string">'hello'</span></span><span>, </span><span><span class="hljs-number">5</span></span><span>); </span><span><span class="hljs-comment">// ရလဒ်ကအနုတ်လက်ခဏာဖြစ်လိမ့်မည်</span></span><span>
</span></span>ဒီတော့ string တစ်ခုဗလာကျတဲ့အခါဒီအခြေအနေကိုဘယ်လိုကိုင်တွယ်ရမယ်ဆိုတာစဉ်းစားဖို့လိုတယ်။
နှစ်ခုအချည်းနှီးသောကြိုးနှင့်နှိုင်းယှဉ် <br> <br> ကြိုးနှစ်ချောင်းနှစ်ခုလုံးသည်အချည်းနှီးသော ကြိုး များဖြစ်သည်။
<span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">strncmp</span></span><span>(</span><span><span class="hljs-string">''</span></span><span>, </span><span><span class="hljs-string">''</span></span><span>, </span><span><span class="hljs-number">5</span></span><span>); </span><span><span class="hljs-comment">// ဝင်သည် 0</span></span><span>
</span></span> သတ်မှတ်ထားသောအရှည်နှိုင်းယှဉ်နေစဉ်အတွင်း 0 င်ဖြစ်ပါတယ်
သတ်မှတ်ထားသောနှိုင်းယှဉ်ချက်အရှည်သည် 0 ဖြစ်ပါက strncmp သည် "ပထမ 0 ဇာတ်ကောင်" နှစ်ခုကို "ပထမ 0 ဇာတ်ကောင်" ကိုနှိုင်းယှဉ်လိမ့်မည်။ 0 င်လာသည့် string သည်အချည်းနှီးသော string တစ်ခုဖြစ်သော်လည်း strncmp သည် အချည်းနှီးသောကြိုးနှစ်ချောင်းကိုညီမျှပြီး 0 င်သို့ပြန်လာရန်စဉ်းစားလိမ့်မည်။
<span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">strncmp</span></span><span>(</span><span><span class="hljs-string">'abc'</span></span><span>, </span><span><span class="hljs-string">'def'</span></span><span>, </span><span><span class="hljs-number">0</span></span><span>); </span><span><span class="hljs-comment">// ဝင်သည် 0</span></span><span>
</span></span>၎င်းသည်အထူးအခြေအနေအချို့တွင်အထူးဂရုပြုရန်လိုအပ်သည်။
အချည်းနှီးသောကြိုးများကြောင့်ဖြစ်ပေါ်လာသောအလားအလာရှိသောပြ problems နာများကိုရှောင်ရှားရန်အောက်ပါနည်းဗျူဟာများကိုကျင့်သုံးနိုင်သည်။
အချည်းနှီးသော strings ကိုစစ်ဆေးပါ string ကိုနှိုင်းယှဉ်ခြင်းမပြုမီ, string ကိုဗလာရှိမရှိပထမ ဦး ဆုံးစစ်ဆေးပါ။ အကယ်. string သည်ဗလာဖြစ်လျှင်စီးပွားရေးယုတ္တိဗေဒအပေါ် အခြေခံ. ပုံမှန်တန်ဖိုးကိုပြန်ပို့ရန်သို့မဟုတ်နှိုင်းယှဉ်မှုကိုတိုက်ရိုက်ကျော်သွားပါ။ ဥပမာအားဖြင့်:
<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">$str1</span></span><span>) || </span><span><span class="hljs-keyword">empty</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-string">"ကြိုးတစ်ချောင်းသည်ဗလာဖြစ်သည်\n"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-variable">$result</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-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$result</span></span><span>;
}
</span></span>ပုံမှန်တန်ဖိုးကိုသတ်မှတ်ပါ string သည်ဗလာဖြစ်လိမ့်မည်ဆိုပါကအချည်းနှီးသောကြိုးမှ 0 င်ရောက်စွက်ဖက်ခြင်းကိုရှောင်ရှားရန်နှိုင်းယှဉ်ခြင်းမပြုမီသင် default valuing သို့ default value ကိုသတ်မှတ်နိုင်သည်။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$str1</span></span><span> = </span><span><span class="hljs-variable">$str1</span></span><span> ?: </span><span><span class="hljs-string">'default'</span></span><span>;
</span><span><span class="hljs-variable">$str2</span></span><span> = </span><span><span class="hljs-variable">$str2</span></span><span> ?: </span><span><span class="hljs-string">'default'</span></span><span>;
</span><span><span class="hljs-variable">$result</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>ဤဥပမာတွင် ဒေါ်လာ str1 သို့မဟုတ် $ str2 သည်အချည်းနှီးဖြစ်လျှင်၎င်းတို့ကို 'default' string နှင့်အစားထိုးလိမ့်မည်။
ကျိုးကြောင်းဆီလျော်နှိုင်းယှဉ်အရှည်ရွေးချယ်ပါ အမှန်တကယ်ဖွံ့ဖြိုးတိုးတက်မှုတွင်ကြိုးများကိုနှိုင်းယှဉ်သောအခါသင့်လျော်သောနှိုင်းယှဉ်ချက်ကိုရွေးချယ်ရန်ကြိုးစားပါ။ အကယ်. သတ်မှတ်ထားသောအရှည်သည်အလွန်သေးငယ်သော်လည်းနှိုင်းယှဉ်မှုကိုစောစီးစွာအဆုံးသတ်နိုင်ပြီးတိကျသောနှိုင်းယှဉ်မှုရလဒ်များရရှိခြင်းဖြစ်နိုင်သည်။ အထူးသဖြင့်အချည်းနှီးသောကြိုးများသို့မဟုတ်တစ်စိတ်တစ်ပိုင်းအချည်းနှီးသောကြိုးများအနေဖြင့်အမှန်တကယ်လိုအပ်ချက်များအပေါ် အခြေခံ. သင့်လျော်သောအရှည်ကိုဆုံးဖြတ်ရန်လိုအပ်သည်။
မလိုအပ်သောနှိုင်းယှဉ်ချက်များကိုရှောင်ရှားရန် strlen function ကိုသုံးပါ တစ်ခါတစ်ရံကျွန်ုပ်တို့သည် string တစ်ခုလုံးကိုနှိုင်းယှဉ်စရာမလိုဘဲ string ၏အမှန်တကယ်အကြောင်းအရာများကိုသာဂရုစိုက်သည်။ ဤအချိန်တွင်သင်ပထမ ဦး ဆုံး string ကို၏အရှည်ကိုစစ်ဆေးပြီးနှိုင်းယှဉ်မည်ကိုဆုံးဖြတ်ပါ။
<span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">strlen</span></span><span>(</span><span><span class="hljs-variable">$str1</span></span><span>) > </span><span><span class="hljs-number">0</span></span><span> && </span><span><span class="hljs-title function_ invoke__">strlen</span></span><span>(</span><span><span class="hljs-variable">$str2</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__">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-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$result</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">"ကြိုးတစ်ချောင်းသည်ဗလာဖြစ်သည်,ကျော် skip。\n"</span></span><span>;
}
</span></span>