强制本地化为os.date()

时间:2014-01-31 20:38:36

标签: php c++ lua localization

我正在使用SMFL库在Lua和C ++中构建一个服务器报告系统,我对潜在的问题有点困惑。 此脚本的目标是创建一个HTML文件(其中包含PHP)并将其上传到我的网络服务器,以便进行报告。 上传文件的名称将是'[进程ID] [客户端IP] [日期] .php',因此我们将获得类似'1234_199.123.45.7_31 / 01 / 2014.php的内容',显然日期格式必须采用欧洲格式。

我使用os.date("%x"),但它会在本地计算机的区域类型中报告日期,但无论客户端的区域设置如何,都需要为dd / mm / yyyy格式。

我已经了解了如何执行此操作,但我只能获得时间偏移,而不是强制os.date("%x")使用特定区域。

如何强制os.date("%x")使用dd / mm / yyyy格式?

2 个答案:

答案 0 :(得分:2)

您可以使用:

os.date("*t")

这将返回一个包含日期时间组件的表,如:

enter image description here

使用此数据,您可以构建自定义格式设置功能,基于T.day,T.month和T.year

答案 1 :(得分:2)

Lua的os.date accepts a format specifier,与strftime相同。根据{{​​3}},您想要的格式是通过

获得的
os.date("%d/%m/%Y")