PHP中处理时间相关的传统函数相当丰富,以下是一些PHP中用于日期和时间操作的经典和常用函数:
-
获取当前时间戳:
time()
: 返回从 Unix 纪元(1970年1月1日 00:00:00 GMT)到当前时间的秒数。
-
格式化本地时间/日期:
date()
: 根据指定的格式返回一个格式化的日期字符串。strftime()
: 根据区域设置格式化本地时间/日期。
-
设置和获取默认时区:
date_default_timezone_set()
: 设置PHP脚本中所有日期时间函数使用的默认时区。date_default_timezone_get()
: 获取当前默认的时区。
-
创建和操作 DateTime 对象:
DateTime()
: 创建一个 DateTime 对象表示特定的时间点。DateTimeImmutable()
: 创建一个不可变的日期时间对象。date_create()
: 创建一个新的 DateTime 对象(别名 ofnew DateTime()
)。date_create_from_format()
: 根据指定的格式解析日期时间字符串并创建 DateTime 对象。
-
日期和时间比较与计算:
date_diff()
: 计算两个 DateTime 对象之间的差异。strtotime()
: 将任何英文文本的日期时间描述解析为 Unix 时间戳。
-
获取微秒级时间:
microtime()
: 返回当前Unix时间戳和微秒数,可以以浮点数或数组形式返回。
-
转换日期时间格式:
date_format()
: 使用指定的格式将 DateTime 对象格式化为字符串。gmdate()
: 类似于date()
, 但它总是使用格林威治标准时间(GMT)。
-
获取时间组件:
()`: 获取给定参数所代表的时间的 Unix 时间戳。
PHP中处理时间相关的传统函数相当丰富,以下是一些PHP中用于日期和时间操作的经典和常用函数:
-
获取当前时间戳:
time()
: 返回从 Unix 纪元(1970年1月1日 00:00:00 GMT)到当前时间的秒数。
-
格式化本地时间/日期:
date()
: 根据指定的格式返回一个格式化的日期字符串。strftime()
: 根据区域设置格式化本地时间/日期。
-
设置和获取默认时区:
date_default_timezone_set()
: 设置PHP脚本中所有日期时间函数使用的默认时区。date_default_timezone_get()
: 获取当前默认的时区。
-
创建和操作 DateTime 对象:
DateTime()
: 创建一个 DateTime 对象表示特定的时间点。DateTimeImmutable()
: 创建一个不可变的日期时间对象。date_create()
: 创建一个新的 DateTime 对象(别名 ofnew DateTime()
)。date_create_from_format()
: 根据指定的格式解析日期时间字符串并创建 DateTime 对象。
-
日期和时间比较与计算:
date_diff()
: 计算两个 DateTime 对象之间的差异。strtotime()
: 将任何英文文本的日期时间描述解析为 Unix 时间戳。
-
获取微秒级时间:
microtime()
: 返回当前Unix时间戳和微秒数,可以以浮点数或数组形式返回。
-
转换日期时间格式:
date_format()
: 使用指定的格式将 DateTime 对象格式化为字符串。gmdate()
: 类似于date()
, 但它总是使用格林威治标准时间(GMT)。
-
获取时间组件:
getdate()
: 返回包含日期和时间信息的关联数组。mktime()
: 获取给定参数所代表的时间的 Unix 时间戳。checkdate()
: 验证一个格里高利历日期是否有效。
-
其他相关函数:
timezone_open()
: 打开一个时区对象。timezone_name_get()
: 获取时区对象的名称。timezone_offset_get()
: 获取时区对象相对于 GMT 的偏移量。
以上仅是 PHP 中与日期和时间处理相关的部分传统函数,随着 PHP 版本的更新,还可能有更多现代及便捷的 API 函数出现。在实际开发中,请查阅最新的 PHP 文档来获取最新和最完整的函数列表及其用法。
checkdate()
: 验证一个格里高利历日期是否有效。
-
其他相关函数:
timezone_open()
: 打开一个时区对象。timezone_name_get()
: 获取时区对象的名称。timezone_offset_get()
: 获取时区对象相对于 GMT 的偏移量。
以上仅是 PHP 中与日期和时间处理相关的部分传统函数,随着 PHP 版本的更新,还可能有更多现代及便捷的 API 函数出现。在实际开发中,请查阅最新的 PHP 文档来获取最新和最完整的函数列表及其用法。
PHP 中处理时间和日期相关的函数涵盖了创建、格式化、比较和修改时间戳或日期对象等多个方面。这里提供一些核心的PHP时间函数示例,包括面向对象风格的用法:
面向对象方式 - DateTime 类及其方法
-
创建 DateTime 对象:
$datetime = new DateTime(); // 默认当前时间 $datetime = new DateTime('2024-01-09 15:30:00'); // 指定时间
-
修改 DateTime 对象的时间:
$date = new DateTime('now'); $date->modify('+1 day'); // 增加一天 echo $date->format('Y-m-d H:i:s'); // 输出修改后的时间
-
使用 DateInterval 进行增加或减少时间:
$datetime = new DateTime(); $interval = new DateInterval('P1DT2H3M'); // P1D表示一天,T2H表示两小时,3M表示三分钟 $datetime->add($interval); // 增加指定的时间间隔 echo $datetime->format('Y-m-d H:i:s'); $interval = new DateInterval('PT4H'); $datetime->sub($interval); // 减少指定的时间间隔 echo $datetime->format('Y-m-d H:i:s');
-
格式化日期:
$dt = new DateTime(); echo $dt->format('Y-m-d H:i:s'); // "2024-01-09 15:30:00" 格式化为标准日期时间格式
-
时间戳转换:
$dt = new DateTime(); $timestamp = $dt->getTimestamp(); // 获取Unix时间戳 $fromTimestamp = new DateTime('@'.$timestamp); // 从时间戳创建DateTime对象
非面向对象方式(传统函数)
-
获取当前时间戳:
$timestamp = time(); // 获取当前时间的时间戳
-
将时间戳转换为可读日期:
$formatted_date = date('Y-m-d H:i:s', $timestamp); // 格式化时间戳为日期时间字符串
-
计算两个时间差:
$date1 = strtotime('2024-01-01'); $date2 = strtotime('2024-01-09'); $interval = $date2 - $date1; $difference = date('d 天 H 小时 i 分钟 s 秒', $interval);
这些是PHP中关于时间和日期操作的一些基本例子,实际上还有更多相关函数可以进行更复杂的时间处理。