PHP date_sub() 函数



定义和用法

此函数是DateTime::sub() 的别名。此函数接受一个 DateTime 对象和一个 DateInterval 对象,将指定的间隔从给定的 DateTime 中减去。

语法

date_sub$object, $interval)

参数

序号 参数及说明
1

object(必填)

这是一个 DateTime 对象,指定/表示需要从中减去时间间隔的日期。

2

interval(必填)

这是一个 DateInterval 对象,指定要减去的间隔。

返回值

PHP date_sub() 函数返回一个 DateTime 对象,从中减去给定的间隔。如果失败,此函数返回布尔值 false

PHP 版本

此函数首次引入于 PHP 5.3.0 版本,并适用于所有更高版本。

示例

以下示例演示了date_sub() 函数的用法:

在线演示
<?php
   //Creating a DateTime object
   $date = date_create("25-09-2019");
   //Adding interval to the date
   $res = date_sub($date, new DateInterval('PT10H30S'));   
   //formatting the date to print it
   $format = date_format( $res, "d-m-Y H:i:s");
   print($format);
?>

这将产生以下结果:

24-09-2019 13:59:30

示例

以下示例使用此函数创建一个间隔,并从日期中减去创建的间隔:

在线演示
<?php
   $date = date_create("25-09-1989");
   $interval = date_interval_create_from_date_string('1025 days');
   $res = date_sub($date, $interval);   
   $format = date_format( $res, "d-m-Y");
   print($format);   
?>

这将产生以下结果:

05-12-1986

示例

现在,让我们尝试添加包含年、月和日的间隔:

在线演示
<?php
   //Creating a DateTime object
   $date = date_create("25-09-1989");
   //Adding interval to the date
   $res = date_sub($date, new DateInterval('P29Y2M5D'));   
   //formatting the date to print it
   $format = date_format( $res, "d-m-Y");
   print($format);
?>

这将产生以下结果:

20-07-1960

示例

在线演示
<?php
   $date = date_create('1995-05-07');
   $interval = date_interval_create_from_date_string('150 days');
   $date->sub($interval);
   print($date -> format('d-m-Y'));
?>

这将产生以下结果:

08-12-1994
php_function_reference.htm
广告