在某个时间点上,我们需要为日期和时间添加若干天、月、年、小时、分钟和秒。PHP为我们提供了几个内置函数来实现这一点。我们将在这里讨论的一些内置函数是date_create()、date_format()和date_add()。
date_create()函数
此函数用于使用日期/时间字符串和时区创建DateTime对象。日期/时间字符串的默认值为当前日期/时间。 语法:
DateTime date_create(time, timezone);
参数: 此函数接受两个参数:
- 时间: (可选)指定日期/时间字符串。空值或默认值 指示当前日期/时间。你可以参考 这个链接 获取PHP中支持的日期和时间格式。
- 时区: (可选)时区。
返回值 :此函数返回指定日期的新DateTime对象。
date_format()函数
函数的作用是:设置给定日期的格式。日期作为DateTime实例提供,该实例通常由date_create()函数返回,format是一个字符串,我们希望根据该字符串格式化日期。 语法:
string date_format(object, format);
参数: 此函数接受两个参数,所有这些参数都是必须提供的。
- 对象: 指定date_create()返回的DateTime对象
- 格式: 指定日期的格式。它接受PHP中date()函数支持的格式。例如:H(24小时格式)、H(12小时格式)、i(分钟:00到59)、s(秒:00到59)等。
返回值 :date_format()函数在成功格式化时返回一个字符串,表示按照指定格式格式化的日期,否则在失败时返回false。
PHP
<?php // using date_create() function to create // DateTime object $date =date_create("2018-03-15"); // using date_format() function to format date echo date_format( $date , "Y/m/d H:i:s"); ?> |
输出:
2018/03/15 00:00:00
date_add()函数
函数的作用是:向日期中添加日、月、年、小时、分钟和秒。日期作为Date_add()函数的DateTime对象提供,我们要添加到日期的间隔作为DateInterval对象提供。 语法:
DateTime date_add(object, interval);
参数: 此函数接受三个参数,所有这些参数都是必须提供的。
- 对象: 指定date_create()返回的DateTime对象。此函数返回一个新的DateTime对象。
- 间隔时间: 指定DateInterval对象,即它以DateTime构造函数支持的格式存储固定的时间量(以年、月、日、小时等为单位)或相对时间字符串。
返回值: 此函数在成功时返回DateTime对象,否则在失败时返回FALSE。 下面的程序演示了PHP中的date_add()函数: 例1
PHP
<?php // PHP program to add 40 days in date $date =date_create("2018-12-10"); date_add( $date , date_interval_create_from_date_string("40 days")); echo date_format( $date , "Y-m-d"); ?> |
输出:
2019-01-19
例2
PHP
<?php //PHP program to add 1 year, 10 mins, 23 secs in date $date =date_create("2018-12-10"); date_add( $date , date_interval_create_from_date_string("1 year + 10 mins + 23 secs")); echo date_format( $date , "Y-m-d H:i:s"); ?> |
输出:
2019-12-10 00:10:23
笔记 :使用“+”运算符,我们可以添加更多的日期和时间。 工具书类 :
- http://php.net/manual/en/datetime.format.php
- http://php.net/manual/en/function.date-add.php
- http://php.net/manual/en/datetime.construct.php