利用gettext來實現PHP的國際化程式設計

2021-06-03 20:28:05 字數 1124 閱讀 7871

<?php

$domain = ;

echo

bindtextdomain

($domain

, );

?>

this will output:

hello.php

<?php

// i18n 程式範例開始

define('package', 'hello'); // 定義要用的mo檔名稱,常規來說,我們都把package的名稱定義和程式名稱相同。

putenv('lang=zh_tw');

setlocale(lc_all, 'zh_tw'); // 指定要用的語系,如:en_us、zh_cn、zh_tw

bindtextdomain(package, '/apache/htdocs/locale');

textdomain(package);

// the .mo file searched is:

// /apache/htdocs/locale/en/lc_messages/hello.mo

echo gettext("hello world!");

?>

在ie中輸入:http://localhost/hello.php,輸出結果為:「hello world!」

note:按照 gnu package 裡面的習慣,可以使用 _(...) 來代替 gettext(...) ,這樣就可以少打很多 gettext 了。

四、接下來設定gettext po檔:

1、建立目錄結構,如下所示:

bindtextdomain's dir

/language

/lc_messages

domain.po

domain.mo

其中 bindtextdomain's dir 為 bindtextdomain() 所用的目錄,language 為要用

的語系,domain 為 package 名稱。

以上面為例:

/locale

/zh_tw

/lc_messages

hello.po

hello.mo

使用gettext來支援PHP的多語言

開發多語言的web應用是一件非常困難的事,各個國家的字符集的編碼方式 貨幣符號 日期格式 數字格式 文字表現都各不相同.如果要轉載本文請註明出處,免的出現版權紛爭,我不喜歡看到那種轉載了我的作品卻不註明出處的人 seven 我們今天用乙個簡單的例項說明一下在php中的gettext的用法 gette...

linux下 安裝php的gettext模組

安裝php的模組有兩種方式 一 重新編譯php,加上 with gettext 二 動態安裝 現在說下第二個動態安裝 2 進入gettext目錄下執行 usr local php bin phpize configure with php config usr local php bin php c...

iOS 利用PHP來進行訊息推送

前提 準備好推送證書 aps development.cer及其p12檔案aps development.p12 開始 假設p12檔案 密碼是 123456 終端操作 進入到存放 cer與 p12檔案的資料夾 1.利用 aps development.cer 檔案生成 pem 檔案openssl x...