利用gettext来实现PHP的国际化编程

<?php

$domain
= 'myapp';
echo
bindtextdomain($domain, '/usr/share/myapp/locale');

?>

This will output:

/usr/share/myapp/locale



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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值