在我的应用程序中提供3种不同的语言(英语,西班牙语,法语)。 每当我将语言从英语更改为西班牙语/英语再到法语时,它会将十进制数字从点转换为逗号,并且会产生问题我。那么如何防止这个问题或解决这个问题?
我的语言转换代码如下所示:
function set_lang($lang=FALSE){
$current_locale=$this->CI->session->userdata('user_language');
if(empty($current_locale)){
$current_locale= 'en_US';
}
putenv("LANG=$current_locale");
setlocale(LC_ALL, $current_locale.".UTF-8");
setlocale(LC_MESSAGES,$current_locale);
setlocale(LC_TIME, $current_locale);
setlocale(LC_CTYPE,$current_locale);
$domain='messages';
$uri_segment='';
$uri_segment = $this->CI->uri->segments;
if(isset($uri_segment[1])){
$filename = getcwd().'/application/modules/user/language/'.$lang.'/LC_MESSAGES/messages.mo';
bindtextdomain(WEBSITE_DOMAIN,getcwd().'/application/modules/'.$uri_segment[1].'/language/');
}
bind_textdomain_codeset(WEBSITE_DOMAIN, 'UTF-8');
textdomain(WEBSITE_DOMAIN);
return true;
}
有什么想法吗?有什么建议吗?
提前感谢所有人。
答案 0 :(得分:0)
您可以使用php的数字格式,使用如下:number_format($ number,2,',','');
了解详情