当前位置:首页 > 技术心得 > 正文内容

php gettext无效解决

xjtudll1年前 (2023-04-08)技术心得670

 代码:

$lang = 'en_US'; //linux不支持zh-Hans,所以gettext、php都不支持。使用locale -a可以看到os支持的语言文字国家地区码。putenv('LANGUAGE=' . $lang); //ubuntu 需要,centos不需要此行setlocale(LC_ALL, $lang . '.utf8'); //ubuntu 需要.utf8,centos可有可无$domain = 'strings';
bindtextdomain($domain, dirname(__FILE__) . '/locale');
bind_textdomain_codeset($domain , 'UTF-8');
textdomain($domain);
代码其实很简单,主要问题点:
1、setlocale记得写utf8,否则有的系统就没效果;
2、确保有这个语言,比如Windows里有cn,但是Linux里就没有cn,只有zh_CN
3、注意翻译文件路径($domain对应了mo的文件名)
目录为en_US,如下:|     |---
|     |---en_US
|     |    |---LC_MESSAGES
|     |    |          |---strings.mo 
 
 
 群晖支持的语言:

 描述文字


扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://www.xjtudll.cn/Exp/654/

标签: PHP
分享给朋友:

“php gettext无效解决” 的相关文章

略坑的STM8L IO外部中断

略坑的STM8L IO外部中断

问题: STM8的GPIO中断,如何判断是哪一个IO中断的? STM8只有一个总的GPIOX(ABCDE)中断,怎么判断是哪个引脚呢? 解决办法: 在设计硬件电路的时候就要注意这个问题,能分散开的就分散开。 至于有的人说的在中断中查询IO电平来判断是哪个IO,那是有缺陷的 例如,一个上升沿中断,脉...

windows环境下TortoiseSVN多仓库(repository)转移合并(修改+转载)

http://www.lilin.net/blog/?p=1346 问题: 两个不同的版本库,放在不同的及其上,各有数个项目在里面,为了统一管理,我现在都集中在一个仓库内,然后用金山快盘,多个机器同步。 回答: 完美包含版本信息,把双库融合,方便管理同步。 自己尝试后发现问题...

CC Debugger不能识别

CC Debugger不能识别

CCdebugger买来的时候正常,生产长期烧录后,就无法识别了,表现如下: 原因: unknown device并不是cc debug挂了,而是CCdebug里的cc2511里面的程序被冲掉了,重新给cc2511烧录程序就行了。 更新固件办法,请参考《CC Debugger User Gui...

电容主要技术参数

电容主要技术参数

1、标称容值及误差 标称值符合E系列。 2、额定工作电压 电容器中的电介质能够承受的电场强度是有限的,当施加在电容器上的电压超过一定值时,电介质有可能被击穿而损坏。额定工作电压是指,在规定的工作温度范围内,电容器在电路中连续工作而不被击穿的加在电容器上的最大有效值,习惯上叫电容器的耐压。 额定电压通...

金蝶k3 wise生产任务单状态

ICMO表中FStatus字段 0-计划  5-确认 1-下达  3-结案...

PowerPCB转Protel

PowerPCB转Protel

第一步:用PowerPCB打开文件,选择Export导出,保存类型选择"ASCII Files(*.asc)",按保存按钮,弹出"ASCII Output"对话框,在导出格式(Format)中选择"PowerPCB V3.5",然后Sele...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。