douchongbang6011 2011-04-14 01:38
浏览 145

gettext设置无法正常工作

I had gettext working, but now it suddenly won't translate. I get find out whats going on. I am trying to use /sys/locale/no_NO/LC_MESSAGES/messages.po to translate the page to norwegian.

/public/home.php

$locale = "en_US";
if (isSet($_COOKIE['lang'])) $locale = $_COOKIE['lang'];
putenv("LC_ALL=$locale");
setlocale(LC_ALL, $locale);
bindtextdomain("messages", "../sys/locale");
textdomain("messages");

echo "<p>locale: " . $locale . " "; 
echo gettext("Home"); 
exit(); 

This prints out

locale: no_No Home when I should be locale: no_No Hjem

  • 写回答

3条回答 默认 最新

  • dongqie2355 2011-05-06 15:53
    关注

    With Japanese I have to do the following:

    putenv("LANG=ja_JP.UTF-8");
    setlocale(LC_MESSAGES, 'ja_JP.UTF-8');
    bindtextdomain('messages', '../locale');
    bind_textdomain_codeset('messages', 'UTF-8');
    textdomain('messages');
    

    With other languages I find I do not always have to add the encoding suffix, it is very inconsistent. Similarly I cannot just use "ja" when "en" works fine.

    setlocale returns false unless the locale is listed in /usr/share/i18n/SUPPORTED but translations will often work despite the error.

    评论

报告相同问题?

悬赏问题

  • ¥15 多址通信方式的抗噪声性能和系统容量对比
  • ¥15 winform的chart曲线生成时有凸起
  • ¥15 msix packaging tool打包问题
  • ¥15 finalshell节点的搭建代码和那个端口代码教程
  • ¥15 用hfss做微带贴片阵列天线的时候分析设置有问题
  • ¥15 Centos / PETSc / PETGEM
  • ¥15 centos7.9 IPv6端口telnet和端口监控问题
  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 海浪数据 南海地区海况数据,波浪数据