2011-08-19 82 views
1

保存我的翻譯的消息到PHP文件和內部翻譯郵件內定義()

define("TEXT", "text"); 

的事情是,當我有一個顯示文本:

We have 30 users online. 

和用戶轉換這個消息給他自己的語言當我從define變量中獲得翻譯後的文本時,我該如何向用戶顯示在線用戶?

例如,如果用戶將文本翻譯爲We have % users online

然後我在PHP語言文件有這樣的:

define("USERS_ONLINE", "We have % users online"); 

我應該打破字符串和我的總在線用戶變量替換%?如果需要,我應該如何處理更多變量?

回答

5

我會建議你使用類似printf的語法來代替:

define("USERS_ONLINE", "We have %s users online"); 
echo sprintf(USERS_ONLINE, 30); 

然後你可以在字符串中多個變量:

define("USERS_ONLINE", "We have %s users online since %s"); 
echo sprintf(USERS_ONLINE, 30, $date); 
+0

所以這可以用於這個定義中的多個變量?例如,我們只有%用戶在%活躍,%日誌在每天。 – fxuser

+0

是的(更新了答案) – arnaud576875

+0

顯然30可以是一個變量以及...所以我想我把它整理out.big謝謝。 – fxuser