您好,感谢您提供任何见解/信息/提示。
我们有一个页面可以同时发送2封不同的电子邮件。 每封电子邮件都使用不同的语言 除了包含日期名称和数字的小表外,几乎所有电子邮件内容都来自数据库。
对于每封电子邮件,我们都使用函数发送它。类似的东西:
function sendemail($locale, $var1, $var2, $var3)
{
setlocale(LC_ALL, $locale);
// build email body text
//day names are presented like: strftime("%a, %d %b %Y %H:%M", $checkDate)
//send email
}
主页面使用这些功能发送2封电子邮件
sendemail($locale1, $var1, $var2, $var3);
sendemail($locale2, $var1, $var2, $var3);
仅在第二封电子邮件中出现问题。那里的日期名称基于第一个区域设置而不是第二个区域设置。因此,如果第一种语言是英语,第二种语言是法语,则第二种电子邮件将使用英文日名称而不是法语。
有没有办法解决这个问题?或者以某种方式破坏/取消设置/删除/重置第一个语言环境,以便第二个正常应用?
我们确信我们在函数中传递了不同的语言/区域设置。
我们目前使用以下语言区域:en_EN.UTF8, fr_FR.UTF8, el_GR.UTF8, de_DE.UTF8, it_IT.UTF8, ru_RU.UTF8, zh_CN.UTF8, ko_KR.UTF8, es_ES.UTF8, sr_RS.UTF8