hongye8160 2016-01-24 01:57 采纳率: 0%
浏览 1667
已结题

php+apache在windows下 国际化(多语言切换不成功)

OS: win7 64
环境:wampserver 64位 (php5.4.12 +apache2.4.4)安装运行成功 php_gettext.dll开启
前提:语言文件 *.mo 及 *.po 存在&路径没问题&编码为UTF-8
如图图片说明

<?php
    $lan  =  $_REQUEST [ 'lan' ];  
    if ( $lan  ==  'zh_CN' ){  
      putenv('LANG=zh_CN' );   
      putenv('LC_ALL=zh_CN' );   
      setlocale(LC_ALL, 'zh_CN' );  //指定要用的语系,如:en_US、zh_CN、zh_TW   
    }elseif  ( $lan  ==  'zh_TW' ){  
      putenv('LANG=zh_TW' );  
      putenv('LC_ALL=zh_TW' ); 
      setlocale(LC_ALL, 'zh_TW' );  //指定要用的语系,如:en_US、zh_CN、zh_TW   
    }elseif  ( $lan  ==  'en_US' ) {  
      putenv('LANG=en_US' ); 
      putenv('LC_ALL=en_US' );
      setlocale(LC_ALL, 'en_US' );  //指定要用的语系,如:en_US、zh_CN、zh_TW         
    } 
    echo getenv('LC_ALL');

    $domain = 'frontend';
    bindtextdomain($domain, 'locale');
    bind_textdomain_codeset($domain, 'UTF-8');
    textdomain($domain);
    header("content-type: textml; charset=UTF-8");

    echo '<br/>';
    echo _('Help');  
    echo '<br/>';
    echo ('成功');
?> 

浏览器访问:http://localhost/test2.php?lan=zh_CN
输出:图片说明
浏览器访问:http://localhost/test2.php?lan=zh_TW
输出:图片说明
浏览器访问:http://localhost/test2.php?lan=en_US
输出:图片说明
浏览器访问:http://localhost/test2.php?lan=AAA
输出:图片说明

最后一个AAA是为了说明不管怎样设置,显示只有中文!!不支持多语言切换

请问:问题可能出现在哪里,接下来该往哪个方向排除,求教....

  • 写回答

1条回答

  • devmiao 2016-01-24 23:06
    关注
    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大