2010-02-15 11 views
5

मैंने MSDN चेक किया और लोकेल स्ट्रिंग zh_Hant है, लेकिन मैंने zh_TW (चीनी , ताइवान)।पारंपरिक चीनी चरित्र को PHP गेटटेक्स्ट एक्सटेंशन (पीओईडीटी में निर्मित .po और .mo फाइलों) में काम करने के लिए पारंपरिक चीनी चरित्र नहीं बना सकता है

पारंपरिक चीनी वर्ण poEditor में ठीक दिखते हैं, लेकिन जब मैं ब्राउज़र में फ़ाइल खोलता हूं तो वर्ण केवल अजीब प्रतीकों («¢ Å ¥ @ ¬É!) होते हैं। मुझे लगता है कि अनुवाद काम कर रहा है, लेकिन एन्कोडिंग के साथ कुछ गड़बड़ है (मैंने चार्सेट और सोर्स कोड चार्टसेट दोनों के लिए यूटीएफ -8 का इस्तेमाल किया)।

फ़ाइलों poEditor साथ उत्पन्न:

messages.po:

msgid "" 
msgstr "" 
"Project-Id-Version: \n" 
"Report-Msgid-Bugs-To: \n" 
"POT-Creation-Date: 2010-02-15 16:26+0800\n" 
"PO-Revision-Date: 2010-02-15 16:26+0800\n" 
"Last-Translator: Jano Chen <[email protected]>\n" 
"Language-Team: \n" 
"MIME-Version: 1.0\n" 
"Content-Type: text/plain; charset=UTF-8\n" 
"Content-Transfer-Encoding: 8bit\n" 
"X-Poedit-KeywordsList: _;gettext;gettext_noop\n" 
"X-Poedit-Basepath: C:\\wamp\\www\\php-test\n" 
"X-Poedit-Language: Chinese\n" 
"X-Poedit-Country: TAIWAN\n" 
"X-Poedit-SourceCharset: utf-8\n" 
"X-Poedit-SearchPath-0: .\n" 

#: test.php:3 
msgid "Hello World!" 
msgstr "哈囉世界!" 

पुनश्च: जब मैं Firefox में एन्कोडिंग प्रदर्शन बिग 5 अक्षरों को ठीक से दिखाई जाती हैं बदलने के लिए, लेकिन अगर मैं बदल उन्हें यूटीएफ -8 में यह दिखाता है: o @ !

उत्तर

8

मैंने अंततः इसे हल किया। मुझे localization.php फ़ाइल करने के लिए निम्नलिखित होना था।

bind_textdomain_codeset("messages", 'UTF-8'); 
+0

मैं इस पर घंटों तक काम कर रहा था। धन्यवाद!! इस समस्या वाले किसी भी व्यक्ति के लिए, 'bind_textdomain_codeset()' का पहला param 'textdomain()' के साथ सेट किए गए किसी भी सेट पर सेट होना चाहिए। यदि आपने 'टेक्स्टडोमेन (' संदेश ') का उपयोग किया है तो आप उपरोक्त एलेक्सचेन्को के उदाहरण में कोड का उपयोग करेंगे। – Gavin

संबंधित मुद्दे

 संबंधित मुद्दे