JSON एन्कोडिंग और विशेष वर्ण
json_encode() फ़ंक्शन का उपयोग करके सरणियों को एन्कोड करते समय, ऐसा हो सकता है कि विशेष वर्ण वाले तत्व परिवर्तित हो जाएं खाली तार. यह व्यवहार विशेष रूप से कॉपीराइट या ट्रेडमार्क प्रतीकों जैसे वर्णों के साथ ध्यान देने योग्य है।
इस समस्या को हल करने के लिए, सुनिश्चित करें कि सभी स्ट्रिंग डेटा JSON के रूप में एन्कोड करने से पहले UTF-8 एन्कोडेड है। इसे utf8_encode() फ़ंक्शन के संयोजन में array_map() का उपयोग करके प्राप्त किया जा सकता है:
$arr = array_map('utf8_encode', $arr);
$json = json_encode($arr);
जैसा कि PHP मैनुअल में बताया गया है, json_encode() के लिए सभी स्ट्रिंग डेटा को UTF-8 एन्कोडेड होना आवश्यक है। JSON एन्कोडिंग से पहले सरणी तत्वों को UTF-8 में एन्कोड करके, हम यह सुनिश्चित करते हैं कि JSON आउटपुट में विशेष वर्ण सही ढंग से दर्शाए गए हैं।
स्पष्टता के लिए, आइए UTF-8 के साथ और उसके बिना किसी सरणी को एन्कोड करने के परिणामों की तुलना करें एन्कोडिंग:
बिना UTF-8 एन्कोडिंग:
$arr = ["funds" => "ComStage STOXX®Europe 600 Techn NR ETF"];
$json = json_encode($arr); // {"funds":null}
UTF-8 एन्कोडिंग के साथ:
$arr = array_map('utf8_encode', ["funds" => "ComStage STOXX®Europe 600 Techn NR ETF"]);
$json = json_encode($arr); // {"funds":"ComStage STOXX\u00c2\u00aeEurope 600 Techn NR ETF"}
UTF-8 एन्कोडिंग लागू करके, विशेष वर्णों को JSON आउटपुट में सही ढंग से दर्शाया जाता है। उचित एन्कोडिंग के लिए लगातार utf8_encode() का उपयोग करना याद रखें।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3