मैं कई भाषाओं में टेक्स्ट प्रदर्शित करने के लिए अपने विचारों के अंदर <?php echo __("this is my string"); ?>
का उपयोग करता हूं। मैं के लिए जर्मन एक पुलिस फाइल निर्देशिका बनाया:केकपीएचपी 2.1 .po फाइलें/अनुवाद काम नहीं कर रहा
=> एप्लिकेशन/लोकेल/जर/LC_MESSAGES/default.po
msgstr "यह मेरी स्ट्रिंग"
क 'IST मीन मर जाता है zeichenkette "
जब मैं अपने AppController.php beforeFilter को Configure::write('Config.language','ger');
जोड़ने पाठ में कार्य अभी भी बना हुआ" यह मेरा स्ट्रिंग "है। यहां तक कि यदि मैं एक अलग संदेश के साथ अंग्रेजी के लिए .po बना देता हूं, तो पाठ अभी भी वही रहता है।
क्या मुझे अनुवाद को सक्रिय करने के लिए एक विशिष्ट सेटिंग बदलनी है?
मैं एक अनुवर्ती समस्या है: मैं core.php को Configure::write('Config.language','eng');
जोड़ा मेरा डिफ़ॉल्ट भाषा सेट करने लेकिन अब मैं मूल्य नहीं बदल सकते हैं, भले ही मैं AppController.php ओवरराइड करने की कोशिश beforeFilter साथ:
Configure::write('Config.language', 'deu'); //'de' also doesn't work
CakeSession::write('Config.language', 'deu'); //'de' also doesn't work
मैं core.php में यह पूरी तरह ठीक काम करता है लेकिन core.php में एक बार सेट मूल्य बदलते हैं तो मैं इसे बदल नहीं कर सकते।
हल: आह, मैं सभी नियंत्रकों के पहलेफिल्टर फ़ंक्शन के अंदर parent::beforeFilter();
जोड़ना भूल गया।
अतिरिक्त जानकारी:
- आप एक डिफ़ॉल्ट भाषा को परिभाषित करना चाहते हैं (और आप आमतौर पर होगा),
Configure::write('Config.language', 'eng');
core.php
पर डाल सकें L10n.php फ़ाइल के संकेत के लिए धन्यवाद, मैं करूंगा भविष्य के संदर्भों के लिए इसका इस्तेमाल करें। –
धन्यवाद, केकपीएचपी के मूल को देखो, मुझे समझने में मदद करता है। –