目录
PHP 日期数据类型
字符串转日期类型
Unix 时间戳转日期格式
字符串直接比较
日期转时间戳
时间戳转日期
结论
首页 后端开发 PHP问题 php 日期数据类型转换

php 日期数据类型转换

May 07, 2023 am 11:11 AM

在开发 Web 应用中,经常会涉及到日期数据类型的转换。PHP 提供了丰富的日期和时间函数,可以方便地进行日期的格式化、比较、计算等操作。本文将介绍 PHP 中的日期数据类型及其转换方法。

PHP 日期数据类型

在 PHP 中,日期可以用字符串或整数表示。常用的日期格式包括:

  • Y-m-d H:i:s:年-月-日 时:分:秒,如 2022-01-01 00:00:00
  • Y/m/d H:i:s:年/月/日 时:分:秒,如 2022/01/01 00:00:00
  • Y年m月d日 H时i分s秒:年月日 时分秒,如 2022年01月01日 00时00分00秒
  • Unix 时间戳:自 1970 年 1 月 1 日以来经过的秒数,如 1640995200

字符串转日期类型

通过 PHP 内置函数 strtotime() 可以将表示日期和时间的字符串转换成 Unix 时间戳。该函数接受一个表示日期和时间的字符串作为参数,返回该日期所对应的 Unix 时间戳。

$time_str = '2022-01-01';
$time_stamp = strtotime($time_str);
echo $time_stamp; // 输出:1640995200
登录后复制

上述代码将日期字符串 '2022-01-01' 转换成 Unix 时间戳,并输出该时间戳。

注意:当使用 strtotime() 函数将日期字符串转换成时间戳时,日期格式必须为 "Month Day Year" 或 "Day Month Year" 的英文日期格式或 "Y-m-d" 的日期格式。

Unix 时间戳转日期格式

通过 PHP 内置函数 date() 可以将 Unix 时间戳格式化为指定的日期格式。该函数接受两个参数:第一个参数是表示日期格式的字符串,第二个参数是 Unix 时间戳。

$time_stamp = 1640995200;
$date_str = date('Y-m-d H:i:s', $time_stamp);
echo $date_str; // 输出:2022-01-01 00:00:00
登录后复制

上述代码将 Unix 时间戳 1640995200 格式化为 'Y-m-d H:i:s' 格式的日期字符串,并输出该字符串。

字符串直接比较

在 PHP 中,可直接使用字符串比较运算符(>、<、==、!= 等)比较日期字符串的大小。如果将日期字符串转换为 Unix 时间戳,也可以直接使用数字比较运算符(>、<、=、!= 等)进行比较。

$date_str1 = '2022-01-01';
$date_str2 = '2022-01-02';
if ($date_str1 < $date_str2) {
    echo '日期 ' . $date_str1 . '在 ' . $date_str2 . '之前';
} else {
    echo '日期 ' . $date_str1 . '在 ' . $date_str2 . '之后';
}
登录后复制

上述代码比较了两个日期字符串的大小,并输出最终的比较结果。

日期转时间戳

可以使用 PHP 内置函数 mktime() 将日期转换成 Unix 时间戳。该函数接受多个参数,依次为时、分、秒、月、日、年。如果不指定参数,则函数会返回当前时间的 Unix 时间戳。

$year = 2022;
$month = 1;
$day = 1;
$hour = 0;
$minute = 0;
$second = 0;
$time_stamp = mktime($hour, $minute, $second, $month, $day, $year);
echo $time_stamp; // 输出:1640995200
登录后复制

上述代码将日期 '2022-01-01' 转换成 Unix 时间戳,并输出该时间戳。

时间戳转日期

和上面介绍的 date() 函数一样,PHP 内置函数 strftime() 也可以将 Unix 时间戳格式化为指定的日期格式。该函数接受两个参数:第一个参数为表示日期格式的字符串(支持格式化字符,如 %Y、%m、%d、%H、%M、%S 等),第二个参数是 Unix 时间戳。

$time_stamp = 1640995200;
$date_str = strftime('%Y年%m月%d日 %H时%M分%S秒', $time_stamp);
echo $date_str; // 输出:2022年01月01日 00时00分00秒
登录后复制

上述代码将 Unix 时间戳 1640995200 格式化为指定的日期格式,并输出该格式化后的字符串。

结论

在 PHP 中,涉及日期类型的转换操作,开发者可以利用内置函数 strtotime()、date()、mktime()、strftime() 等函数方便地进行操作。在实际开发中,需要根据具体的需求选择合适的函数,灵活运用。

以上是php 日期数据类型转换的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)