လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> JSON Encoding နှင့် PHP တွင် coubbled တရုတ်ကုဒ်ပြ problem နာကိုမည်သို့ဖြေရှင်းရမည်နည်း။

JSON Encoding နှင့် PHP တွင် coubbled တရုတ်ကုဒ်ပြ problem နာကိုမည်သို့ဖြေရှင်းရမည်နည်း။

M66 2025-07-11

JSON encoding နှင့် decoding and decoding ကို PHP တွင်တရုတ်၏ garbled code ကိုတွေ့ရသည့်အကြောင်းအရင်း

PHP တွင် JSON encoding နှင့် decoding ကိုအသုံးပြုသောအခါတရုတ်ရိုးရာတွင် garbled သည်ဘုံပြ problem နာဖြစ်သည်။ များသောအားဖြင့်၎င်းသည်ဆာဗာနှင့် 0 န်ဆောင်မှုခံယူသူအကြားကိုက်ညီမှုမရှိသောဇာတ်ကောင် encoding ကြောင့်ဖြစ်သည်။ ဤဆောင်းပါးသည်ဤပြ problem နာကို encoding နှင့် encoding encoding ကို seting လုပ်ခြင်းဖြင့်ဤပြ problem နာကိုမည်သို့ဖြေရှင်းရမည်ကိုအသေးစိတ်ရှင်းပြပါလိမ့်မည်။

ဖြေရှင်းချက် 1: set character encoding

PHP တွင် JSON Encoding နှင့် decoding လုပ်ငန်းစဉ်တွင်အက်ခရာသင်္ကေတသည်တသမတ်တည်းဖြစ်ကြောင်းသေချာစေရန် HTTP header အချက်အလက်များရှိအက်ခရာသင်္ကေတကို header () function ကိုမှတစ်ဆင့်သတ်မှတ်နိုင်သည်။ ၎င်းသည်တရုတ်၏ garbled code ၏အသွင်အပြင်ကိုရှောင်ရှားနိုင်သည်။ ဒီမှာနမူနာကုဒ်တစ်ခုပါ။

header ('အကြောင်းအရာအမျိုးအစား: လျှောက်လွှာ / JSON; Charset = UTF-8');

$ ဒေတာ = array (
    'name' => 'Zhang San' \ t
    'အသက်အရွယ်' => 25,
    'City' => 'ဘေဂျစ်'
);

$ json = json_encode ($ ဒေတာ, JSONS_UNSESescaped_uncicode);

ECHO $ JSON,

ဤဥပမာတွင် HTTP header ၏ဇာတ်ကောင် encoding ကို Utf-8 သို့ 0 င်ရောက်ခြင်းနှင့် JSOSESSESTED_UNCOCOCOUDET PARMANTATENT ကိုပြောင်းလဲရန်နှင့် JSON_enCode () function ကိုအသုံးပြုခြင်းအားဖြင့်တရုတ်စာလုံးများကို Unicode Encoding သို့ထွက်ပြေးခြင်းကိုရှောင်ရှားနိုင်သည်။

ဖြေရှင်းချက် 2 - လက်စွဲစာအုပ်ပြောင်းလဲခြင်းနှင့် encoding

ဆာဗာနှင့် client အကြားရှိအက်ခရာသင်္ကေတများကိုက်ညီမှုရှိလျှင် concled code ကိုရှောင်ရှားရန် encoding ကိုကိုယ်တိုင်ကိုယ်ကျပြောင်းလဲနိုင်သည်။ ဤတွင် encoding ကိုကိုယ်တိုင်ကူးပြောင်းခြင်း၏ဥပမာတစ်ခုမှာ -

$ ဒေတာ = array (
    'NAME' => 'li si',
    'အသက်အရွယ်' => 30,
    'City' => 'Shanghai'
);

// encoding encoding အတွင်း encoding $ json = json_encode ($ ဒေတာ, JSONS_UNSESescaped_unicode)
$ JSON = MB_COCVERT_ENCOTING ($ JSONS, UTF-8 ',' UTF-8 ');

// enoding $ json = mb_convertert_encoding ($ JSONS ', UTF-8', 'utf-8' ',
$ ဒေတာ = JSONS_DECODED ($ JSONS, TRUE);

var_dump ($ ဒေတာ);

ဤကုဒ်တွင်ကျွန်ုပ်တို့သည် MB_ConVert_encoding () function ကို အသုံးပြု. encoding ၏ရှေ့နောက်ညီညွတ်မှုကိုသေချာစေရန်,

ကောက်ချက်

JSON Encoding နှင့် PHP တွင် decoding တွင်တရုတ်၏ carbled concled code ၏ပြ problem နာကိုဖြေရှင်းရန်၎င်းကိုအက်ခရာ encoding သို့မဟုတ် encoding encoding encoding encoding encoding setting ကို setting လုပ်ခြင်းဖြင့်အောင်မြင်နိုင်သည်။ အသုံးပြုသောနည်းစနစ်မည်သို့ပင်ရှိပါစေဆာဗာနှင့် 0 န်ဆောင်မှုခံယူချက်အကြား coding ကိုက်ညီမှုသေချာသည်။

ဤဆောင်းပါးတွင်ဖော်ပြထားသောဖြေရှင်းချက်သည် PHP တွင် JSON encoding နှင့် decoding ၏ပြ problem နာကိုထိရောက်စွာဖြေရှင်းနိုင်ရန်ကူညီနိုင်သည်ဟုကျွန်ုပ်မျှော်လင့်ပါသည်။ သင့်တွင်အခြားမေးခွန်းများရှိပါက ကျေးဇူးပြု. ဆွေးနွေးရန်စာတစ်စောင်ထားခဲ့ပါ။