လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> JSON ဒေတာရှိလယ်ကွင်းအမည်ကိုအစားထိုးပါ

JSON ဒေတာရှိလယ်ကွင်းအမည်ကိုအစားထိုးပါ

M66 2025-06-02

PHP တွင် JSON ဒေတာများကိုလုပ်ဆောင်သောအခါတစ်ခါတစ်ရံကျွန်ုပ်တို့သည်လယ်ကွင်းအမည်ကိုအစားထိုးရန်လိုအပ်သည်။ အသုံးများသောနည်းလမ်းမှာ JSON ကိုခင်းကျင်းရန်နှင့်၎င်းကိုအချို့သောအခြေအနေများတွင်ပြုလုပ်ရန်အတွက်ပြုလုပ်ရန်ဖြစ်သည်။ ဤဆောင်းပါးသည် PHP ၏ MB__eregi_replace function ကို သုံး. JSON ဒေတာတွင်လယ်ကွင်းအမည်များကိုမည်သို့အစားထိုးပြီး၎င်းကိုနမူနာကုဒ်ဖြင့်ရှင်းပြရမည်ကိုအသေးစိတ်ရှင်းပြပါလိမ့်မည်။


mb_eregi_replace ဆိုတာဘာလဲ။

MB_eregi_replace သည် PHP Multi-byte string function library (Mbstring) တွင်ပုံမှန်အစားထိုးလုပ်ဆောင်ချက်ဖြစ်သည်။ ၎င်းသည်ကိစ္စရပ်နှင့်ဆိုင်သောပုံမှန်အားဖြင့်ကြိုးကြိုးများကိုပြန်လည်နေရာချထားရေးကိုထောက်ပံ့ပေးပြီး Multi-byte အက္ခရာများကိုထောက်ပံ့သည်။

function ရှေ့ပြေးပုံစံ:

 string mb_eregi_replace ( string $pattern , string $replacement , string $string [, string $option = "msr" ] )
  • $ ပုံစံ - ကိုက်ညီရန်ပုံမှန်စကားရပ်ပုံစံ (ကိစ္စတွင်မခံစားနိုင်သော)

  • $ အစားထိုး : string ကိုအစားထိုး

  • $ string : command string ကို

  • $ option : optional parameter, ကိုက်ညီမှုအပြုအမူကိုသတ်မှတ်ပါ, ပုံမှန်အားဖြင့်ပုံမှန်အားဖြင့်အသုံးပြုကြသည်


JSON နယ်ပယ်အမည်များကို MB_EREGI_replace နှင့်အဘယ်ကြောင့်အစားထိုးရန်?

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

  • MB_ereGi_replace သည် bytes multi-bytes များကိုထောက်ပံ့ပေးပြီး JSON နှင့်အတူ encoding formats အမျိုးမျိုးဖြင့်သဟဇာတဖြစ်သည်။

  • အစားထိုးခြင်းသို့ ဦး တည်သောအဖြစ်အပျက်ကွဲပြားခြားနားမှုများကိုရှောင်ရှားရန်ပံ့ပိုးမှုအမှုအာရုံမခံစားနိုင်သောအစားထိုးခြင်း,

  • ရိုးရှင်းသော Field Name အစားထိုးနေရာများအတွက်သင့်တော်သည်။ JSON ကို ဦး စွာခွဲခြမ်းစိတ်ဖြာရန်မလိုအပ်ပါ။


JSON နယ်ပယ်အမည်များကိုအစားထိုးခြင်းအတွက်အကြံဥာဏ်များ

အောက်ပါ JSON string ရှိပါသည်ဆိုပါစို့:

 {
  "UserName": "Zhang San",
  "UserAge": 28,
  "UserEmail": "zhangsan@example.com"
}

ကျွန်ုပ်တို့သည် "User" ကို "အသင်း 0 င်" နှင့်အတူလယ်ကွင်းအားလုံးတွင် "အသုံးပြုသူ" ကိုအစားထိုးချင်တယ်။ အဆင့်များစစ်ဆင်ရေးအဆင့်များ -

  1. ပုံမှန်ကိုက်ညီသောကွင်းဆက်အမည်အပိုင်းကိုသုံးပါ။ ဥပမာအားဖြင့် အသုံးပြုသူအမည်ကို "Username" နှင့်ကိုက်ညီရန်။

  2. MB_eregi_rere_replace ကိုကိုက်ညီသောလယ်ကွင်းအမည်ကိုအစားထိုးရန်။

  3. အသစ်တစ်ခု JSON string ကို output ကို။


နမူနာကုဒ်

 <?php
// မူရင်းဖြစ်သော JSON ကြိုး
$json = '{"UserName":"Zhang San","UserAge":28,"UserEmail":"zhangsan@m66.net"}';

// အစားထိုးစည်းမျဉ်းများကိုသတ်မှတ်ပါ,လယ်ပြင်အမည်ကိုရှေ့ဆက် "User" အစားထိုးလိုက်ပါ "Member"
// ပုံမှန်စကားရပ်နှင့်အတူနှစ်ဆကိုးကားကိုက်ညီ User အစအ ဦး မှာလယ်ပြင်အမည်,လယ်ပြင်၏နောက်တစ်ဝက်ကိုဖမ်းယူပါ
$pattern = '"User([a-zA-Z0-9_]*)"';

// 替换ကြိုး,သေတမ်းစာ User အစားထိုးလိုက်ပါ Member,နောက်ဆက်မပြောင်းလဲစောင့်ရှောက်ပါ
$replacement = '"Member\\1"';

// အသုံးပြု mb_eregi_replace အစားထိုးပါစေ
$newJson = mb_eregi_replace($pattern, $replacement, $json);

// output ကိုအစားထိုးသည် JSON ကြိုး
echo $newJson;
?>

ရလဒ်များအပြေး

 {"MemberName":"Zhang San","MemberAge":28,"MemberEmail":"zhangsan@m66.net"}

ခွဲခြမ်းစိတ်ဖြာခြင်းညွှန်ကြားချက်များ

  • ပုံမှန်အသုံးအနှုန်း '"အသုံးပြုသူ (A-Za-Za-Z0-9 _] *)" အသုံးပြုသူ "သည် " User "ဖြင့်" အသုံးပြုသူ "ဖြင့်စတင်သောနယ်ပယ်အမည်များအားလုံးနှင့်ကိုက်ညီသည်။

  • ကျန်ရှိသောလယ်ကွင်းအမည်ကိုရယူရန် Capture Group (A-ZA-Z0-9 _] *) ကိုသုံးပါ။

  • "အသင်း 0 င်" နှင့်အတူ "user" နှင့်အတူ "user" ကိုအစားထိုးရန် "အဖွဲ့ဝင် \\ 1" ကို သုံးပါ။

  • ထိုသို့ပြုလုပ်ခြင်းသည်လယ်ကွင်း၏သက်ဆိုင်ရာတန်ဖိုးကိုမထိခိုက်ပါ။

  • JSON တွင်ပေါ်ရှိ URL ဒိုမိန်းအမည်ကို M66.net နှင့်တွေ့ဆုံရန်လိုအပ်ချက်များနှင့်တွေ့ဆုံရန် M66.net ဖြင့်အစားထိုးခဲ့သည်။


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

  • ဤနည်းလမ်းသည် JSON အတွက်ရိုးရှင်းသော Field Name ဖွဲ့စည်းပုံနှင့်စံသတ်မှတ်ချက်ပုံစံဖြင့်သာသင့်လျော်သည်။

  • JSON string တွင်ရှုပ်ထွေးသောအသိုက်ဖွဲ့စည်းပုံများပါ 0 င ်ပါက JSON_Decode ဖြင့် ပထမအကြိမ်ပြုလုပ်ရန်အကြံပြုသည်။

  • MB_ereGi_replace သည် ရှုပ်ထွေးသောပုံမှန် syntax ကိုအခိုင်အမာပြောဆိုခြင်းကိုမထောက်ပံ့ပါ။ အစားထိုးလိုအပ်ချက်များသည်ရှုပ်ထွေးပြီးပါက ကျေးဇူးပြု. PCRE function သို့မဟုတ် JSON resolution အစီအစဉ်ကိုရွေးချယ်ပါ။