当前位置 : 主页 > 网络编程 > PHP >

php怎么将string转为日期格式

来源:互联网 收集:自由互联 发布时间:2022-06-23
转换为日期格式的方法:1、使用“strtotime($string)”语句,将指定字符串类型的日期时间文本转为时间戳;2、使用“date(Y-m-d H:i:s,时间戳)”语句格式化时间戳,将其转为“年-月-日 时:分

转换为日期格式的方法:1、使用“strtotime($string)”语句,将指定字符串类型的日期时间文本转为时间戳;2、使用“date("Y-m-d H:i:s",时间戳)”语句格式化时间戳,将其转为“年-月-日 时:分:秒”的日期格式。

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

php将string转为日期格式

实现方法:

  • 使用strtotime()从字符串中提取时间日期,将英文文本描述的日期时间描述解析为 UNIX 时间戳

  • date()格式化时间戳,将其转换为指定格式的日期

示例:

<?php
header('content-type:text/html;charset=utf-8');  
ini_set('date.timezone', 'Asia/Shanghai');//设置时区 
echo date("Y-m-d H:i:s",strtotime("now")), "<br />";
echo date("Y-m-d H:i:s",strtotime("10 September 2000")), "<br />";
echo date("Y-m-d H:i:s",strtotime("+1 day")), "<br />";
echo date("Y-m-d H:i:s",strtotime("+1 week")), "<br />";
echo date("Y-m-d H:i:s",strtotime("+1 week 2 days 4 hours 2 seconds")), "<br />";
echo date("Y-m-d H:i:s",strtotime("next Thursday")), "<br />";
echo date("Y-m-d H:i:s",strtotime("last Monday")), "<br />";
?>

1.png

说明:

date()第一个参数格式化字符串中可以识别的特殊字符如下表所示:

字符说明返回值例子d月份中的第几天,使用两位的数字表示,不足两位时在前面补 001 到 31D星期几的英文缩写(使用 3 个字母表示)Mon 到 Sunl(“L”的小写字母)星期几的英文单词Sunday 到 SaturdayN根据 ISO-8601 标准格式,使用数字表示星期中的第几天(PHP5.1.0 新加)1(表示星期一)到 7(表示星期天)S每月天数后面的英文后缀(使用 2 个字符表示)st、nd、rd 或者 th。可以和 j 一起使用w使用数字表示星期中的第几天0(表示星期天)到 6(表示星期六)z使用数字表示一年中的第几天0 到 365W根据 ISO-8601 标准格式,使用数字表示年份中的第几周,每周从星期一开始,(PHP 4.1.0 新增)例如:42(当年的第 42 周)F月份的英文单词,例如 January 或者 JuneJanuary 到 Decemberm使用两位的数字表示当前月份01 到 12M月份的英文缩写Jan 到 Decn使用数字表示当前月份1 到 12t指定月份的天数28 到 31L指定的年份是否为闰年如果是闰年值为 1,否则为 0o根据 ISO-8601 标准格式使用数字表示年份,这和 Y 的作用相同(PHP 5.1.0 新增)1999 or 2019Y使用 4 位数字表示完整的年份例如:1999 或 2019y使用 2 位数字表示年份例如:99 或 03a小写的上午和下午值am 或 pmA大写的上午和下午值AM 或 PMBSwatch Internet 标准时000 到 999g使用 12 小时格式表示小时数1 到 12G使用 24 小时格式表示小时数0 到 23h使用 12 小时格式表示小时数,有前导零01 到 12H使用 24 小时格式表示小时数,有前导零00 到 23i使用两位数字表示分钟数,有前导零00 到 59>s使用两位数字表示秒数,有前导零00 到 59>u毫秒(PHP 5.2.2 新增)。需要注意的是 date() 函数总是返回 000000,因为它只接受 integer 参数,而 DateTime::format() 才支持毫秒例如:654321e时区标识例如:UTC、GMT、Atlantic/AzoresI(大写的“i”)是否为夏令时夏令时为 1,否则为 0O与格林尼治时间相差的小时数例如:+0200P与格林尼治时间(GMT)的差别,小时和分钟之间由冒号分隔例如:+02:00T本机所在的时区例如:EST、MDT(在 windows 下为完整文本格式,例如“Eastern Standard Time”,中文版会显示“中国标准时间”)Z时差偏移量的秒数,UTC 西边的时区偏移量总是负的,UTC 东边的的时区偏移量总是正的-43200 到 43200cISO-8601 格式的日期2014-02-12T15:19:21+00:00rRFC 822 格式的日期例如:Thu,21 Dec 2000 16:01:07 +0200U从 UNIX 纪元(January 1 1970 00:00:00 GMT)开始至今的秒数和 time() 返回相同的时间戳

扩展知识:

在 PHP 中是通过日期和时间函数来获取日期和时间的。日期和时间函数依赖于服务器的时间设置,服务器的时间设置默认是格林尼治时间(零时区时间),如果不特意设置时间为特定时区时间,那么通过 PHP 有关函数获取到的时间为零时区的时间,比北京时间少 8 个小时。

PHP 中可使用 ini_set() 函数设置指定配置选项的值,这个配置选项会在脚本运行时保持新的值,并在脚本结束时恢复。函数的语法格式如下:

ini_set($varname, $newvalue)

其中 $varname 为待修改的配置选项,$newvalue 为配置选项的新值。

提示:ini_set() 函数并不能修改所有的配置选项,可以通过访问“https://www.php.net/manual/zh/ini.list.php”来查看可以修改的配置选项。

推荐学习:《PHP视频教程》

以上就是php怎么将string转为日期格式的详细内容,更多请关注自由互联其它相关文章!

上一篇:php怎么检测字符串是否只有字母
下一篇:没有了
网友评论