လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> MB_strouper Function ၏အခြေခံအသုံးပြုမှုကဘာလဲ။ ဒီ Multibyte String Capitalization Function ကိုဘယ်လိုမြန်မြန်ကျွမ်းကျင်အောင်လုပ်မလဲ။

MB_strouper Function ၏အခြေခံအသုံးပြုမှုကဘာလဲ။ ဒီ Multibyte String Capitalization Function ကိုဘယ်လိုမြန်မြန်ကျွမ်းကျင်အောင်လုပ်မလဲ။

M66 2025-06-22

PHP တွင် strtoupper () strutoupper ကဲ့သို့သောရိုးရာ string ကိုလုပ်ဆောင်ချက်များသည်ဤစာလုံးများကိုမှန်ကန်စွာကိုင်တွယ်နိုင်မည်မဟုတ်ပါ (UTF-8, GBK, Big5 စသည်) ။ ဒီအချိန်မှာငါတို့ MB_strtoupper () function ကိုသုံးနိုင်တယ်။ ယနေ့ကျွန်ုပ်တို့သည် MB_strtoupper ၏အခြေခံအသုံးပြုမှုကိုအသေးစိတ်နားလည်နိုင်ပြီးဤလုပ်ဆောင်မှုကိုမည်သို့မြန်မြန်စီမံခန့်ခွဲရမည်ကိုရှင်းပြပါမည်။

1 ။ MB_stroupper () function ကိုခြုံငုံသုံးသပ်ချက်

MB__stroupper () function ၏ function သည် function ကို function သည်အက္ခရာစဉ်စာလုံးများကိုစာလုံးအကြီးဖြင့်ပြောင်းလဲရန်ဖြစ်သည်။ Strtoupper () , mb_stroupper () မတူဘဲ Multi-byte character set များကိုမှန်ကန်စွာကိုင်တွယ်နိုင်သည်, UTF-8 encoding အောက်တွင်တရုတ်နှင့်ဂျပန်ကဲ့သို့သောဇာတ်ကောင်များကိုမှန်ကန်စွာပြုလုပ်နိုင်သည်။

function ကိုအဓိပ္ပါယ်

 <span><span><span class="hljs-title function_ invoke__">mb_strtoupper</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$str</span></span><span>, </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$encoding</span></span><span> = </span><span><span class="hljs-literal">null</span></span><span>): </span><span><span class="hljs-keyword">string</span></span><span>
</span></span>
  • $ str : စာလုံးအကြီးအဖြစ်ပြောင်းလဲရန်လိုအပ်သည့် input string ကို။

  • $ encoding : optional parameter, သတ်မှတ်ထားတဲ့ဇာတ်ကောင် encoding, definition encoding, default value သည် NULL တန်ဖိုးကိုဆိုလိုသည်,

မှတ်သားရန်အရာ

  • MB_strtoupper () သည် Multi-byte encoding string string အတွက်သာသင့်လျော်ပြီး UTF-8, Shift-Jis, EUC-JP စသည့် encoding အတွက်အသုံးပြုသည်။

  • အကယ်. သင်သည် Mbstring extension ကို install လုပ်ပါက PHP သည်ဤ function ကို သုံး. အသုံးမပြုပါ။

2 ။ အခြေခံအသုံးပြုမှု

အသုံးအများဆုံးအသုံးပြုမှုမှာ string ကိုစာလုံးအမြောက်အမြားကိုတိုက်ရိုက်ပြောင်းလဲရန်ဖြစ်သည်။ ဥပမာအားဖြင့်, တရုတ်သို့မဟုတ်အင်္ဂလိပ်စာ string ကိုစာလုံးအကြီးသို့ပြောင်းပါ။

ဥပမာ 1: အင်္ဂလိပ် string ကိုစာလုံးအကြီးသို့ပြောင်းပါ

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$str</span></span><span> = </span><span><span class="hljs-string">"hello world"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">mb_strtoupper</span></span><span>(</span><span><span class="hljs-variable">$str</span></span><span>);  </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း "HELLO WORLD"</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

ဥပမာ 2 - တရုတ် string ကိုစာလုံးအကြီးသို့ပြောင်းပါ

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$str</span></span><span> = </span><span><span class="hljs-string">"မင်္ဂလာပါ,ကမ်ာဘ"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">mb_strtoupper</span></span><span>(</span><span><span class="hljs-variable">$str</span></span><span>);  </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း "မင်္ဂလာပါ,ကမ်ာဘ"</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

အထက်ပါဥပမာတွင် MB_stroupper () သည်စာလုံးအကြီးများကိုပြောင်းလဲစေခြင်း, တရုတ်ကြိုးတွေအတွက်တရုတ်အက္ခရာများသည်အမှုအရာခြားနားချက်မရှိပါက၎င်းတို့သည်ပြောင်းလဲလိမ့်မည်မဟုတ်ပါ။

3 ။ encoding ကိုသတ်မှတ်ပါ

MB_strtoupper () သည် encoding parameter မှတစ်ဆင့်အက္ခရာများကိုသတ်မှတ်နိုင်သည်။ ပုံမှန်အားဖြင့်၎င်းသည် PHP ၏ Internal character encoding (များသောအားဖြင့် UTF-8) ကိုအသုံးပြုသည်။ သို့သော်တစ်ခါတစ်ရံတွင်အတိအလင်းသတ်မှတ်ထားသောအခြား encoded strings များကိုကိုင်တွယ်ရန်လိုအပ်သည်။

ဥပမာ 3 - encoding ကို gbk အဖြစ်သတ်မှတ်ပါ

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$str</span></span><span> = </span><span><span class="hljs-string">"မင်္ဂလာပါ,ကမ်ာဘ"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">mb_strtoupper</span></span><span>(</span><span><span class="hljs-variable">$str</span></span><span>, </span><span><span class="hljs-string">"GBK"</span></span><span>);  </span><span><span class="hljs-comment">// တည်နေ GBK 编码下ထုတ်လုပ်ခြင်း大写</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

encoding ကို GBK အဖြစ်သတ်မှတ်ထားပြီး function သည် string ကိုသတ်မှတ်ထားသော encoding နှင့်အညီစာလုံးအဖြစ်ပြောင်းလဲပေးသည်။ အကယ်. encoding မမှန်ကန်ပါက၎င်းသည် output အမှားအယွင်းများသို့မဟုတ်အမှိုက်များသို့မဟုတ်အမှိုက်များကိုဖြစ်စေနိုင်သည်။

4 ။ အထူးအက္ခရာများပါ 0 င်သည့် string ကိုကိုင်တွယ်ပါ

MB_strtoupper () function သည်သာမန်စာလုံးများကိုကိုင်တွယ်ရုံသာမကအထူးအက္ခရာများပါ 0 င်သောကြိုးများကိုမှန်ကန်စွာကိုင်တွယ်နိုင်သည်။

ဥပမာ 4: အထူးအက္ခရာများနှင့်အတူ string ကို

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$str</span></span><span> = </span><span><span class="hljs-string">"Hello, ကမ်ာဘ! မင်္ဂလာပါ!"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">mb_strtoupper</span></span><span>(</span><span><span class="hljs-variable">$str</span></span><span>);  </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း "HELLO, ကမ်ာဘ! မင်္ဂလာပါ!"</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

ဤဥပမာတွင်အင်္ဂလိပ်အပိုင်းသည်မြို့တော်ကိုအရင်းအနှီးအဖြစ်ပြောင်းလဲပြီးတရုတ်အစိတ်အပိုင်းများကိုမပြောင်းလဲနိုင်သော်လည်းအထူးဇာတ်ကောင်များ (ကော်မာနှင့်အာဇိသည်) သည်အတူတူပင်ကျန်ရှိနေသည်။

5 ။ MB_stroupper () နှင့် strtoupper အကြားနှိုင်းယှဉ်ခြင်း ()

Single-byte character sets (ဥပမာ - 8859-1 သို့မဟုတ် ASCII encoding), strtoupper () သည်လုံလောက်သည်။ အကယ်. string တွင် (တရုတ်သို့မဟုတ်ဂျပန်ကဲ့သို့သော) Multibyte ဇာတ်ကောင်များပါ 0 င်ပါက strtoupper () သည် ကောင်းမွန်စွာအလုပ်လုပ်လိမ့်မည်မဟုတ်,

ဥပမာ 5 - Strtoupper အားဖြင့်တရုတ်ကြိုးများကိုကိုင်တွယ်ခြင်းအမှားအယွင်း ()

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$str</span></span><span> = </span><span><span class="hljs-string">"မင်္ဂလာပါ,ကမ်ာဘ"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">strtoupper</span></span><span>(</span><span><span class="hljs-variable">$str</span></span><span>);  </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း错误或乱码</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

အထက်ပါကုဒ် သည် carbled code သည် carbled code ကိုဖြစ်ပေါ်စေနိုင်သည်

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

MB_strtoupper () သည်အထူးသဖြင့်တရုတ်, ဂျပန်နှင့်အခြားဇာတ်ကောင်အစုံများအတွက်အထူးသင့်လျော်သော MB_Chstoupper () သည်အလွန်အသုံးဝင်သောကိရိယာတစ်ခုဖြစ်သည်။ PHP တွင်၎င်းကိုအသုံးပြုခြင်းသည် Multibyte အက္ခရာများကိုကြမ်းခင်းသို့မဟုတ်မမှန်ကန်ကြောင်းအပြုအမူမရှိဘဲမှန်ကန်စွာပြောင်းလဲခြင်းကိုသေချာစေသည်။ MB_strtoupper () ၏အခြေခံအသုံးပြုမှုကိုကျွမ်းကျင်မှုသည် encoding စွမ်းဆောင်ရည်ကိုတိုးတက်စေရုံသာမက encoding ထိရောက်မှုကိုတိုးတက်စေရုံသာမက,