MATLAB 帮助中心
日期和时间输入的日期值或日期名称
d = day(t)
d = day(t,dayType)
d = day(t) 返回与输入数组中每个日期和时间对应的日期值。默认情况下,day 返回一个月中某天的日期数字,该数字与输入 datetime 数组 t 的元素相对应。
d
t
day
datetime
输出 d 是一个 double 数组,其中包含从 1 到 31 的整数值,具体取决于月和年。要将日期值赋给 datetime 数组 t,可使用 t.Day 并修改 Day 属性。
double
t.Day
Day
示例
d = day(t,dayType) 返回 datetime 数组 t 的日期值类型或名称,指定为 "dayofmonth"、"dayofweek"、"dayofyear"、"name" 或 "shortname"。
dayType
"dayofmonth"
"dayofweek"
"dayofyear"
"name"
"shortname"
全部折叠
从日期数组中提取一个月中日期值。
t = [datetime('yesterday');datetime('today');datetime('tomorrow')]
t = 3×1 datetime 12-Jul-2025 13-Jul-2025 14-Jul-2025
d = 3×1 12 13 14
通过将 'name' 指定为 day 函数的第二个输入确定任意日期是星期几。
'name'
t = datetime(2014,05,16)
t = datetime 16-May-2014
d = day(t,'name')
d = 1×1 cell array {'Friday'}
或者,指定 'dayofweek' 以数值形式返回星期几。
'dayofweek'
d = day(t,'dayofweek')
d = 6
日期和时间输入,指定为 datetime 数组。
为了支持过去需要 Financial Toolbox™ 才能使用的一些代码,day 还接受序列日期值和文本作为输入,但不推荐使用它们。有关详细信息,请参阅版本历史记录。
'dayofmonth'
'iso-dayofweek'
'dayofyear'
'shortname'
日期值的类型,指定为表中的某个值。
dayType 的值
描述
'dayofmonth'(默认值)
月中日期值,从 1 到 28、29、30 或 31。范围取决于月。
周中日期值,从 1 到 7,其中一周的第 1 天是周日。
'iso-dayofweek' (自 R2023a 起)
周中日期值,从 1 到 7,根据 ISO 8601 标准,其中一周的第 1 天是星期一。
年中日期值,从 1 到 365 或 366,具体取决于年。
完整日期名称,例如 Sunday。对于 NaT 日期时间值,其名称为空字符向量 ''。
Sunday
NaT
''
缩写的星期几名称,例如 Sun。对于 NaT 日期时间值,其名称为空字符向量 ''。
Sun
注意
day 返回以指定语言显示的日期名称,该语言通过“设置”窗口中的日期时间格式部分中的区域设置选项指定。要更改默认的日期时间区域设置,请参阅Modify Command Window Settings。
仅当 t 是 datetime 数组时,此参量才有效。
天数或名称,以 double 类型的整数数值数组或字符向量元胞数组形式返回。d 的大小与 t 相同。
全部展开
day 函数完全支持 tall 数组。有关详细信息,请参阅 tall 数组。
backgroundPool
ThreadPool
此函数完全支持基于线程的环境。有关详细信息,请参阅在基于线程的环境中运行 MATLAB 函数。
此函数完全支持分布式数组。有关详细信息,请参阅使用分布式数组运行 MATLAB 函数 (Parallel Computing Toolbox)。
要返回 ISO 星期几,请使用 'iso-dayofweek' 选项。按照 ISO 8601 标准,星期一是周中第一天。
尽管 day 支持序列日期值和文本输入,但还是推荐使用 datetime 值。datetime 数据类型提供灵活的日期和时间格式、纳秒精度的存储,以及考虑时区和夏令时的属性。
要将序列日期值或文本转换为 datetime 值,请使用 datetime 函数。例如:
t = datetime(738427.656845093,"ConvertFrom","datenum"); d = day(t)
d = 28
目前没有停止支持序列日期值或文本输入的计划。
在以前的版本中,有两个 day 函数:一个在 MATLAB® 中,接受 datetime 值;另一个在 Financial Toolbox 中,接受序列日期值或文本值。从 R2022a 开始,您可以在没有 Financial Toolbox 的情况下调用 day。当您在 MATLAB 中调用 day 时,它接受所有以前的输入类型。
例如,您可以在 MATLAB 中使用序列日期值和文本进行以下调用:
d = day(738427.656845093)
d = day("28-Sep-2021")
此外,当第一个输入不是 datetime 数组时,day 还接受表示日期格式的第二个输入:
d = day(t,F)
在此语法中,可以使用 datestr 函数文档中的有效日期格式指定 F,但尚不支持 'Q' 格式设定符。例如:
datestr
F
'Q'
d = day("2021/28/09","yyyy/dd/mm")
ymd | year | quarter | month | week | isweekend | datetime
ymd
year
quarter
month
week
isweekend
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处