您好,感谢您提供任何见解/信息/提示。
我们有一个页面同时发送 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