Ruby中的DateTime.parse()是否依赖于区域设置?

Ruby中的DateTime.parse()是否依赖于区域设置?,ruby,datetime,datetime-format,Ruby,Datetime,Datetime Format,我想知道以下示例的输出: 解析01/03时,是否会将其解析为3月1日或1月3日?Ruby不依赖于区域设置。因为Ruby是一种服务器端语言,而不是像JavaScript那样的客户端语言,所以Ruby使用web应用服务器上的系统时钟,并使用这些信息来计算时间。无论您的系统设置为哪个时区,您的Ruby应用程序都将使用哪个时区 从字符串解析日期时,DateTime将根据输入的格式进行最佳猜测: DateTime.parse('01/03') #=>2019年1月3日星期四00:00:00+0000 Da

我想知道以下示例的输出:
解析
01/03
时,是否会将其解析为
3月1日
1月3日

Ruby不依赖于区域设置。因为Ruby是一种服务器端语言,而不是像JavaScript那样的客户端语言,所以Ruby使用web应用服务器上的系统时钟,并使用这些信息来计算时间。无论您的系统设置为哪个时区,您的Ruby应用程序都将使用哪个时区

从字符串解析日期时,
DateTime
将根据输入的格式进行最佳猜测:

DateTime.parse('01/03')
#=>2019年1月3日星期四00:00:00+0000
DateTime.parse('2019/01/03')
#=>2019年1月3日星期四00:00:00+0000
DateTime.parse('01/03/2019')
#=>2019年3月1日星期五00:00:00+0000
您还可以明确地告诉
DateTime
如何使用
strtime
解析字符串:

date='01-03-2019'
DateTime.strTime(日期,“%m-%d-%Y”)
#=>2019年1月3日星期四00:00:00+0000
DateTime.strTime(日期,“%d-%m-%Y”)
#=>2019年3月1日星期五00:00:00+0000

我很确定它是确定性的,是的。解析函数中的
rand
调用将是奇怪的@谢谢,修好了。我不确定我是否已将问题表述为“最佳”:)事实上,一些
rand()
实现也可以是确定性的。如果只是01/03,则在日期解析时返回2014-01-03,而Date.month返回1。然而,如果是01/03/yyyy,则Date.parse返回yyyy-03-01,Date.month返回3Ruby没有任何与区域设置相关的变量,因此不能。如果您知道顺序,请使用
DateTime.strtime('01/03','%d/%m')