函式名稱:dgettext()
函式描述:dgettext() 函式用於在指定的域中翻譯一個字串並返回結果。
用法:
string dgettext ( string $domain , string $message )
引數:
- $domain: 字串,表示要翻譯的域的名稱。通常是一個 gettext 文字域。
- $message: 字串,表示待翻譯的訊息。
返回值:
- 如果翻譯成功,則返回翻譯後的字串;若翻譯未找到,則返回原始的 $message 字串。
示例:
<?php
// 設定域為 "messages"
$domain = "messages";
// 設定域的整體路徑
bindtextdomain($domain, "./locale");
// 指定當前使用的域
textdomain($domain);
// 翻譯訊息 "Hello World!"
$translated_message = dgettext($domain, "Hello World!");
// 顯示翻譯結果
echo $translated_message;
?>
在上面的示例中,我們首先透過 bindtextdomain()
函式設定了域 "messages" 的路徑。然後,透過 textdomain()
函式將當前使用的域設定為 "messages"。最後,使用 dgettext()
函式來翻譯訊息 "Hello World!"。如果找到了該翻譯,則返回翻譯後的字串;否則,返回原始訊息字串。
注意:在使用 dgettext() 函式前,還需要使用 bindtextdomain() 和 textdomain() 函式來設定和指定要使用的域。