SuperAPI AI 工具集

bitrix-datetime

通用与其它

查看项目

更新于 10-15 17:30

技能介绍

用途:整理 Bitrix 框架中处理日期与时间的官方方式,适用于解析用户输入、格式化输出、日期运算及时区转换,并覆盖 ORM 字段。

主要能力:Date 仅表示日期(时间 00:00:00),不是 \DateTime 子类,内部包装一个实例,因此不存在 modify()、sub()、setTimestamp();DateTime 继承 Date,增加时间、时区与用户时间转换。通用方法有 format()、add()、setDate()、getTimestamp()、getDiff()、toString(),DateTime 另有 setTime()、setTimeZone()、setDefaultTimeZone()、toUserTime()、disableUserTime()。

使用方式:new Date('25.11.2025', 'd.m.Y') 第二个参数为 PHP 格式;new DateTime('2025-11-25 14:30:00', 'Y-m-d H:i:s', new \DateTimeZone('UTC'));不传格式时按站点文化格式解析,非法输入抛 ObjectException。DateTime::tryParse($input, 'd.m.Y H:i') 出错返回 null。Date::isCorrect() 对 31.02.2025 会滚动为 03.03.2025,严格校验需往返比对或 checkdate()。add() 会修改自身并返回对象,支持 ISO 间隔(P10D、-P1M、PT30M)与相对文本(+2 weeks、-3 days)。值时区保存在服务器时区,启用时区后用户看到自己的时区。可用 Context::getCurrent()->getCulture() 获取文化格式,再用 toString($culture)、format(DateTime::getFormat($culture)) 或 Date::convertFormatToPhp() 转换;掩码 YYYY/MMMM/MM/DD、MI、SS、HH/H、GG/G、TT/T 对应不同 PHP 格式,单个 H 表示 12 小时制。ORM 中 DateField 返回 Date,DatetimeField 返回 DateTime,筛选应使用对象而非字符串。

限制:部分内容(如全套方法细节、价格与平台支持)暂未提供,应以官方文档为准;写入旧式接口时需注意用户时区字符串的处理。