我有一个modx网站,在英语和法语的一堆不同的页面上输出一些日期 - 它工作正常,但现在业主报告法国日期显示'有趣的人物'
数据库,modx和页面都使用UTF8编码,日期值(publishedon)作为unix时间存储在数据库中,并且调用如下:
[[+publishedon:strtotime:date=`%B %e, %Y`]]
根据我的理解,这只是使用php strtotime函数,但是在法语页面上,日期显示为:
d�cembre 18, 2018
因此Locale函数正在工作但不是字符集,NOW立即雾化该日期是数据库中的一些副本:
"Le 18 décembre"
使用正确的字符,我们可以看到页面的编码是正确的,但该函数似乎没有使用正确的字符编码!?
Modx尚未更新。
有谁知道这里可能会发生什么以及如何为输出设置正确的编码?
更新信息:
它工作正常,但现在业主报告法国日期显示'有趣的人物'
有趣的是发生了什么并成为了原因。可能会发生一些服务器更新吗?有时候,hoster做出了不可磨灭的贡献:)你现在在php.ini文件中有什么编码?另外你使用什么MODX版本?另请注意为下一个modx系统设置存储的内容(直接或通过上下文设置重新定义):
locale,modx_charset,use_multibyte
Br,安东
使用支持utf8的语言环境MODX系统设置,如fr_FR.utf8或类似设置。
您必须先查看主机上可用的区域设置。