轉換為日期格式的方法: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 />"; ?>
說明:
date()第一個參數格式化字串中可以辨識的特殊字符如下表所示:
字元 | 說明 | 傳回值範例 |
---|---|---|
d | 月份中的第幾天,使用兩位數的數字表示,少於兩位時在前面補0 | 01 到31 |
D | 星期幾的英文縮寫(使用3 個字母表示) | Mon 到Sun |
l(「L」的小寫字母) | 星期幾的英文單字 | Sunday 到Saturday |
N | 根據ISO-8601 標準格式,使用數字表示星期中的第幾天(PHP5.1.0 新加) | 1(表示星期一)到7(表示星期日) |
S | 每月天數後面的英文後綴(使用2 個字元表示) | st、nd、rd 或th。可以和j 一起使用 |
w | 使用數字表示星期中的第幾天 | 0(表示星期日)到6(表示星期六) |
z | 使用數字表示一年中的第幾天 | 0 到365 |
根據ISO-8601 標準格式,使用數字表示年份中的第幾週,每週從星期一開始,(PHP 4.1.0 新增) | #例如:42(當年的第42 週) | |
月份的英文單詞,例如January 或June | January 到December | |
使用兩位的數字表示目前月份 | 01 到12 | |
月份的英文縮寫 | Jan 到Dec | |
使用數字表示目前月份 | 1 到12 | |
指定月份的天數 | 28 到31 | |
指定的年份是否為閏年 | 如果是閏年值為1,否則為0 | |
根據ISO-8601 標準格式使用數字表示年份,這和Y 的作用相同(PHP 5.1.0 新增) | 1999 或 2019 | |
使用4 位數字表示完整的年份 | 例如:1999 或2019 | |
#使用2 位數字表示年份 | 例如:99 或03 | |
小寫的上午和下午值 | am 或pm | |
大寫的上午和下午值 | AM 或PM | |
Swatch Internet 標準時 | 000 到999 | |
使用12 小時格式表示小時數 | 1 到12 | |
使用24 小時格式表示小時數 | 0 到23 | |
使用12 小時格式表示小時數,有前導零 | 01 到12 | |
使用24 小時格式表示小時數,有前導零 | 00 到23 | |
使用兩位數字表示分鐘數,有前導零 | 00 到59> | |
使用兩位數字表示秒數,有前導零 | 00 到59> | |
毫秒(PHP 5.2.2 新增)。要注意的是date() 函數總是回傳000000,因為它只接受integer 參數,而DateTime::format() 才會支援毫秒 | 例如:654321 | |
時區標識 | 例如:UTC、GMT、Atlantic/Azores | |
##是否為夏令時 | 夏令時為1,否則為0 | |
與格林尼治時間相差的小時數 | 例如: 0200 | |
與格林尼治時間(GMT)的差別,小時和分鐘之間由冒號分隔 | 例如: 02:00 | |
本機所在的時區 | 例如:EST、MDT(在windows 下為完整文字格式,例如“Eastern Standard Time” ,中文版會顯示「中國標準時間」) | |
時差偏移的秒數,UTC 西邊的時區偏移量總是負的, UTC 東邊的時區偏移總是正的 | -43200 到43200 |
扩展知识:
在 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中文網其他相關文章!