查詢

gettext()函式—用法及示例

「 從指定的文字域中獲取翻譯後的字串 」


函式名:gettext()

適用版本:PHP 4, PHP 5, PHP 7

用法:gettext() 函式用於從指定的文字域中獲取翻譯後的字串。它是 PHP 中實現國際化的一種方式,可以根據使用者的語言環境返回對應的翻譯文字。

語法:string gettext ( string $message )

引數:

  • $message:要翻譯的字串。

返回值:返回翻譯後的字串,如果找不到對應的翻譯,則返回原始字串。

示例:

  1. 基本用法:
// 設定語言環境為英文
putenv("LC_ALL=en_US");
setlocale(LC_ALL, 'en_US');

// 載入翻譯域
bindtextdomain("myapp", "/path/to/locale");

// 設定當前翻譯域
textdomain("myapp");

// 獲取翻譯後的字串
echo gettext("Hello"); // 輸出:Hello

// 切換語言環境為法文
putenv("LC_ALL=fr_FR");
setlocale(LC_ALL, 'fr_FR');

// 獲取翻譯後的字串
echo gettext("Hello"); // 輸出:Bonjour
  1. 使用變數作為翻譯字串:
$name = "John";

// 獲取翻譯後的字串,帶有變數
echo sprintf(gettext("Hello, %s!"), $name); // 輸出:Hello, John!

注意事項:

  • 在使用 gettext() 函式之前,需要先設定語言環境和載入翻譯域。
  • 翻譯域可以是一個目錄,其中包含多個翻譯檔案,每個檔案對應一種語言。
  • gettext() 函式會根據當前的語言環境查詢對應的翻譯文字,如果找不到,則返回原始字串。
  • 可以使用 sprintf() 函式將變數插入到翻譯字串中。

更多資訊和示例可以參考 PHP 手冊:https://www.php.net/manual/en/function.gettext.php

補充糾錯
上一個函式: geoip_org_by_name()函式
下一個函式: getSession()函式
熱門PHP函式
分享連結