程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> 利用gettext來實現PHP的國際化編程

利用gettext來實現PHP的國際化編程

編輯:PHP綜合

通常人們寫程序時都是將文字寫死在程序裡的,比如:echo "Hello World!"; ,假如要改成它國語言,寫國際化程序,就要逐個打開進行修改,程序較短時還行,若程序有上萬甚至更多,改起來就不是那麼容易了。近來隨著i18n的逐漸標准化,我也來講一講在PHP中如何實現國際化支持。跟其他程序語言一樣,在 PHP 也可以利用 gettext 套件寫作 i18n 程序,實現 NLS(Native Language Support) 國際化支持,具體請參考官方文檔( http://www.gnu.org/manual/gettext/index.html )。

實現流程:程序設計者在程序碼中寫入所要顯示的信息,在運行程序時並不會直接顯示程序設計師所寫的信息,而會先去找一個所設置語系的信息檔。如果未找到,才會去顯示程式碼中的信息。

一、安裝設置gettext套件:

1) *NIX系統:

1、從 http://www.gnu.org/software/gettext/gettext.html 下載 gettext package,進行安裝

2、編譯PHP的時候加上“--with-gettext[=DIR]”,其中DIR為gettext安裝的

目錄,缺省為:/usr/local

3、保存,然後 restart server。

2) WIN32系統:

1、需要將gnu_gettext.dll檔拷貝到系統目錄下面 (Ex: C:\WINNT\SYSTEM32 or C:\WINDOWS\SYSTEM32),PHP 4.2.3 之後文件名為 libintl-1.dll,可在 php4\dlls 下獲得。

2、打開php.ini檔,查找extension=php_gettext.dll,去掉前面的“;”

3、保存,然後restart server。

若一切順利,就可以在 phpinfo() 中看到 gettext 字樣,至此已設置完畢。

二、php_gettext.dll套件裡有好幾個函式,具體請看相關的manual。在這裡我們只用記住3個函式就行了,如下:

string bindtextdomain ( string domain, string directory)

string textdomain ( string text_domain)

string gettext ( string message)

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved