首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[函数]IntlCalendar::fieldDifference()函数—用法及示例

发布于 2025-04-28 14:40:53
0
34

函数:IntlCalendar::fieldDifference()

适用版本:PHP 5.5.0以上

用法:IntlCalendar::fieldDifference()函数用于计算两个日期之间指定字段的差异。它返回一个数组,包含指定字段的差异值。

语法:public static array IntlCalendar::fieldDifference ( mixed $when , mixed $field )

参数:

  • $when:一个表示日期时间的变量,可以是DateTime对象、DateTimeImmutable对象或表示Unix时间戳的整数。
  • $field:一个表示日期字段的常量,可以是IntlCalendar类中定义的常量之一,如IntlCalendar::FIELD_YEAR、IntlCalendar::FIELD_MONTH等。

返回值:返回一个包含差异值的数组。数组的键是差异字段的名称,值是差异值。

示例:

// 创建一个IntlCalendar对象
$calendar = IntlCalendar::createInstance();

// 设置两个日期,分别为2010年1月1日和2020年12月31日
$when1 = new DateTime("2010-01-01");
$when2 = new DateTime("2020-12-31");

// 计算两个日期之间的年份差异
$difference = IntlCalendar::fieldDifference($when1, IntlCalendar::FIELD_YEAR);
echo "年份差异:" . $difference['year'] . PHP_EOL;

// 计算两个日期之间的月份差异
$difference = IntlCalendar::fieldDifference($when1, IntlCalendar::FIELD_MONTH);
echo "月份差异:" . $difference['month'] . PHP_EOL;

// 计算两个日期之间的天数差异
$difference = IntlCalendar::fieldDifference($when1, IntlCalendar::FIELD_DAY_OF_MONTH);
echo "天数差异:" . $difference['day_of_month'] . PHP_EOL;

输出:

年份差异:10
月份差异:120
天数差异:3652

在上面的示例中,我们创建了一个IntlCalendar对象,并设置了两个日期。然后,我们使用IntlCalendar::fieldDifference()函数计算了两个日期之间的年份差异、月份差异和天数差异,并将差异值输出到屏幕上。

评论
一个月内的热帖推荐
啊龙
Lv.1普通用户

9545

帖子

31

小组

3242

积分

赞助商广告
站长交流