加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码门户网 (https://www.92codes.com/)- 云服务器、云原生、边缘计算、云计算、混合云存储!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

怎么用PHP将年月日切换为不同的日期格式

发布时间:2023-08-09 11:37:46 所属栏目:PHP教程 来源:未知
导读:   这篇文章主要介绍了怎么用PHP将年月日转换为不同的日期格式的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用PHP将年月日转换为不同的日期格式文章
  这篇文章主要介绍了怎么用PHP将年月日转换为不同的日期格式的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用PHP将年月日转换为不同的日期格式文章都会有所收获,下面我们一起来看看吧。
 
  日期和时间的概念
 
  在介绍如何使用PHP处理日期和时间之前,首先要理解日期和时间的概念。在计算机系统中,日期和时间通常是以数字的形式表示的。年份通常由4位数字表示,例如2019年;月份通常用1-12之间的数字表示,例如3月表示为3;日通常用1-31之间的数字表示,例如5日表示为5。而时间通常以小时、分钟和秒来表示,例如12点30分35秒表示为12:30:35。
 
  在PHP中,日期和时间通常是以Unix时间戳的形式表示的。Unix时间戳是从格林威治时间1970年1月1日00:00:00开始的秒数。因此,Unix时间戳为0代表1970年1月1日00:00:00,而Unix时间戳为1546322400代表2019年1月1日00:00:00。
 
  将年月日转换为Unix时间戳
 
  在PHP中,可以使用strtotime()函数将字符串日期和时间转换为Unix时间戳。strtotime()函数的语法如下:
 
  strtotime(string $time [, int $now = time() ])
 
  其中$time参数是包含日期和时间的字符串,$now参数是可选的,表示当前时间的Unix时间戳。如果不指定$now参数,则默认为当前时间的Unix时间戳。例如:
 
  $date = "2019-01-01";
 
  $timestamp = strtotime($date);
 
  echo $timestamp; // 输出1546300800
 
  上述代码中,$date变量包含了日期字符串"2019-01-01",将其作为参数传递给strtotime()函数,将其转换为Unix时间戳,最终输出结果为1546300800,表示2019年1月1日00:00:00的Unix时间戳。
 
  将Unix时间戳转换为日期字符串
 
  在PHP中,可以使用date()函数将Unix时间戳转换为日期字符串。date()函数的语法如下:
 
  date(string $format [, int $timestamp = time() ])
 
  其中$format参数是格式化字符串,指定如何将Unix时间戳转换为日期字符串。$timestamp参数是可选的,表示要被格式化的Unix时间戳。如果不指定$timestamp参数,则默认为当前时间的Unix时间戳。例如:
 
  $timestamp = 1546300800;
 
  $date = date("Y年m月d日", $timestamp);
 
  echo $date; // 输出2019年01月01日
 
  上述代码中,$timestamp变量包含了Unix时间戳1546300800,将其作为参数传递给date()函数,并使用格式化字符串"Y年m月d日"将其转换为日期字符串$datetime,最终输出结果为2019年01月01日。
 
  将日期字符串转换为日期对象
 
  PHP 5.2.0及以上版本中,可以使用date_create()函数将字符串日期转换为日期对象。date_create()函数的语法如下:
 
  date_create(string $time, DateTimeZone $timezone = null)
 
  其中$time参数是包含日期和时间的字符串,$timezone参数是可选的,表示日期和时间的时区。如果不指定$timezone参数,则默认为服务器的时区。例如:
 
  $datestr = "2019-01-01 12:30:00";
 
  $datetime = date_create($datestr);
 
  print_r($datetime); // 输出:DateTime Object ( [date] => 2019-01-01 12:30:00.000000 [timezone_type] => 3 [timezone] => Asia/Shanghai )
 
  上述代码中,$datestr变量包含了日期和时间字符串"2019-01-01 12:30:00",将其作为参数传递给date_create()函数,并将返回的日期对象保存到$datetime变量中。最终打印出$datetime变量的内容为:
 
  DateTime Object ( [date] => 2019-01-01 12:30:00.000000 [timezone_type] => 3 [timezone] => Asia/Shanghai )
 
  通过输出结果可以看到,$datetime包含了日期和时间,时区等信息。
 
  将日期对象转换为日期字符串
 
  在PHP中,可以使用DateTime类提供的DateTime::format()方法将日期对象转换为日期字符串。DateTime::format()方法的语法如下:
 
  public string DateTime::format(string $format)
 
  其中$format参数是格式化字符串,指定如何将日期对象转换为日期字符串。例如:
 
  $datestr = "2019-01-01 12:30:00";
 
  $datetime = date_create($datestr);
 
  echo $datetime->format("Y-m-d H:i:s"); // 输出:2019-01-01 12:30:00
 
  上述代码中,$datestr变量包含了日期和时间字符串"2019-01-01 12:30:00",将其作为参数传递给date_create()函数,并将返回的日期对象保存到$datetime变量中。最终使用$datetime->format()方法将日期对象转换为格式化字符串"Y-m-d H:i:s",并输出结果为2019-01-01 12:30:00。
 

(编辑:源码门户网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章