我在我的項目中有工作本地化。工作意味着我的項目被翻譯成locale/sk
文件夾中的任何語言,sk
爲slovak作爲我的默認系統語言。Setlocale返回false(WAMP)
設置爲其他語言不起作用。我試過$lang = 'cs'
,'cz'
,'en'
,'en_UK'
, 'en_UK.utf8'
等。儘管如此,只有'sk'
文件夾中的翻譯被採用並且setlocale()
函數仍然返回false。我試圖在瀏覽器中更改默認語言 - 無效。
這是我的代碼:
putenv("LANG=$lang");
setlocale(LC_ALL, $lang);
bindtextdomain("messages", realpath("../localem"));
textdomain("messages");
...
_("Welcome!")
我也曾嘗試這些:
putenv("LANGUAGE=$lang");
putenv('LC_ALL=$lang');
任何建議都歡迎。
編輯:
$loc = array('nor');
if (setlocale(LC_ALL, $loc)==false) print ' false'; else print setlocale(LC_ALL, $loc);
'nor'
打印Norwegian (Bokmĺl)_Norway.1252
,'rus'
俄語,但'svk'
輸出false也是如此'cze'
。
在列表中的所有這些都提到:
http://msdn.microsoft.com/en-us/library/cdax410z%28v=vs.80%29.aspx
感謝您的反饋。我編輯我的問題,報告進度(仍然無法弄清楚,現在我開始感到困惑) – 2012-07-16 13:15:22
也,甚至認爲我不會得到錯誤,沒有文件夾中的翻譯「否」,「也」,或者'no_NO'被採用,但仍然是'sk'文件夾中的一個。 – 2012-07-16 13:21:10
如果沒有粘貼這些信息,也無法說出尋找翻譯的邏輯是什麼。對於我們所知道的,可能甚至不依賴於setlocale的值。 – MatsLindh 2012-07-16 13:22:19