这是php 手册中的一小段代码:
putenv('LC_ALL=zh_CN');
setlocale(LC_ALL, 'zh_CN');
bindtextdomain('domain', './locale');
textdomain('domain');
echo gettext('Hello');
它将输出文件中定义的你domain.mo
,但问题是只要 Apache 正在运行,gettext()
总是返回缓存的结果。
如果我将 Hello 的翻译更改为您好,它domain.mo
仍然会输出您好。
但是,可以通过将和的domain
参数更改为新名称来解决此问题。喜欢从到。但是每次更新文件时编辑php文件真的很痛苦。bindtextdomain()
textdomain()
"domain"
"domain2"
.mo
有没有更好的方法来做到这一点,比如删除一些文件夹或调用一些 php 函数来完成这项工作?这样我就可以为此目的编写一个小脚本。