2012-03-01 12 views
5

मैं एक वेब ऐप को स्थानीयकृत करने के लिए PHP गेटटेक्स्ट एक्सटेंशन का उपयोग करता हूं। जब आप ऐसा करेंगे: वहाँ उस पथ अनुकूलित करने के लिए एक रास्ता हैPHP गेटटेक्स्ट: डोमेन के पथ को सेट करने के बाद डिफ़ॉल्ट MO पथ को कैसे बदलें?

/locales/fr_FR/LC_MESSAGES/example.mo 

:

bindtextdomain("example", "/locales"); 

आप fr_FR को लोकेल कर रहे हैं तो उस में एमओ के लिए दिखेगा? उदाहरण के लिए मैं निम्नलिखित संरचना का उपयोग करना चाहता हूं:

/locales/example.fr_FR.mo 

उत्तर

7

निर्देशिका संरचना gettext द्वारा तय की गई है।

क्योंकि कई अलग-अलग पैकेजों के लिए कई अलग-अलग भाषाओं को संग्रहीत किया जाना है, हमें इन सूचनाओं को फ़ाइल संदेश कैटलॉग फ़ाइलों में जोड़ने के लिए कुछ तरीका चाहिए। यूनिक्स वातावरण में आमतौर पर उपयोग किए जाने वाले तरीके में फ़ाइल नाम में यह एन्कोडिंग होता है। यह भी यहां किया जाता है। निर्देशिका (या डिफ़ॉल्ट निर्देशिका) नाम bindtextdomains दूसरा तर्क में दी गई, स्थान, स्थान श्रेणी और डोमेन नाम के नाम के बाद concatenated रहे हैं:

dir_name/स्थानीय/LC_category/domain_name.mo

+1

धन्यवाद! मैंने इसका स्रोत देखा, यहां यह भविष्य के संदर्भ के लिए है: http://www.gnu.org/software/gettext/manual/gettext.html#Locating-Catalogs – gou1

+0

यह जानना बहुत अच्छा है, हालांकि वर्डप्रेस के साथ असंगत, जो आपको किसी भी निर्देशिका में ऐसा करने की अनुमति देता है: dir_name/domain-xx_XX.mo – daveagp

+0

वर्डप्रेस में ऐसा लगता है कि उन्होंने php में अपना 'gettext' लागू किया - वे php के gettext मॉड्यूल पर भरोसा नहीं करते हैं, इसलिए वे किसी भी निर्देशिका पेड़ का उपयोग कर सकते हैं पसंद – itsmeee

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