这是出于好奇,而不是因为我现在需要知道它,但是在 PHP 手册中,它们是相同的;我看不出同一事物有两种不同数据格式的原因。
http://php.net/manual/en/class.datetime.php
const string RFC1123 = "D, d M Y H:i:s O" ;
const string RFC2822 = "D, d M Y H:i:s O" ;
有什么线索吗?
这是出于好奇,而不是因为我现在需要知道它,但是在 PHP 手册中,它们是相同的;我看不出同一事物有两种不同数据格式的原因。
http://php.net/manual/en/class.datetime.php
const string RFC1123 = "D, d M Y H:i:s O" ;
const string RFC2822 = "D, d M Y H:i:s O" ;
有什么线索吗?
RFC1123是“Internet 主机要求 - 应用程序和支持”,1989 年 10 月
RFC2822是“Internet 消息格式”,2001 年 4 月
将RFC1123视为 RFC2822 的父级。它引用RFC2822作为日期/时间的适当规范,如下所示:
3.3. 日期和时间规范
日期和时间出现在几个标题字段中。本节指定完整日期和时间规范的语法。尽管在整个日期时间规范中允许折叠空格,但建议在 FWS 出现的每个位置使用单个空格(无论是必需的还是可选的);一些较旧的实现可能无法正确解释其他出现的折叠空白。
date-time = [ day-of-week "," ] 日期 FWS 时间 [CFWS]
day-of-week = ([FWS] day-name) / obs-day-of-week
日期名称 = “周一”/“周二”/“周三”/“周四”/“周五”/“周六”/“周日”
日期 = 日月年
年 = 4*DIGIT / obs-年
月份 = (FWS 月份名称 FWS) / obs 月份
月份名称=“一月”/“二月”/“三月”/“四月”/“五月”/“六月”/“七月”/“八月”/“九月”/“十月”/“十一月”/“十二月” "
day = ([FWS] 1*2DIGIT) / obs-day
时间 = 一天中的时间 FWS 区域
时间 = 小时 ":" 分钟 [ ":" 秒 ]
小时 = 2DIGIT / obs-小时
分钟 = 2DIGIT / obs-分钟
秒 = 2DIGIT / obs-秒
zone = (( "+" / "-" ) 4DIGIT) / obs-zone
我认为原因是文档。日期格式可能相同,但它们在不同的文档中独立定义。老实说
const string COMMON_DATE_FORMAT_FOR_RFC1123_AND_2822 = "D, d M Y H:i:s O" ;
不会那么有用。