2017-09-07 82 views
3

我想利用我已經實現了下面的代碼PHP的gettext()翻譯我的網站:的I18n使用PHP的gettext()

if (false === function_exists('gettext')) { 
    echo "You do not have the gettext library installed with PHP."; 
    exit(1); 
} 
setlocale(LC_ALL, 'en_US.UTF-8'); 
$localedir = dirname(__FILE__) . '/Locale'; 
echo $localedir . ': '; 
bindtextdomain('messages', $localedir); 

textdomain('messages'); 
echo gettext("Hello"); 
exit(0); 

但亙古不變的似乎工作,因爲它呼應相同的字符串我在gettext()中傳入的內容。

我使用poedit創建了* .po,* .mo文件,同時遵循https://blog.udemy.com/php-gettext/教程。

上面的代碼已經從https://github.com/nota-ja/php-gettext-example/blob/master/index.php

採取但是同時具有這樣的解決方案我無法給定的內容翻譯。任何形式的幫助將不勝感激。

謝謝!

+0

的gettext應該是這樣的gettext函數(){} –

+0

和你沒有檢查虛假function_exists會檢查是否函數存在與否 –

+0

@Anil什雷斯塔的gettext(){}給語法錯誤。請詳細說明我應該傳入gettext函數的內容。此外,它似乎是一個路徑問題的翻譯文件加載。 –

回答

0

你不必等於false與function_exists。 function_exists會檢查是否函數存在與否

if (function_exists('gettext')) { 
    // this function exists 
}else{ 
    echo "You do not have the gettext library installed with PHP."; 
    exit(1); 
}