搜尋
首頁後端開發PHP問題php怎麼取得目前時間
php怎麼取得目前時間Aug 30, 2019 am 10:00 AM
php時間獲取

php怎麼取得目前時間

一、取得目前時間戳記

方法1:透過time函數

time();

方法2:透過$_SERVER中的REQUEST_TIME元素

$_SERVER['REQUEST_TIME'];

方法3:透過strtotime函數

strtotime('now');

二、取得目前時間

#透過date函數格式化時間戳

echo date('Y-m-d h:i:s', time()); // 2018-10-3 15:57:05

三、時區問題

上述方法都存在時區問題,具體解決:

方法一:php.ini修改為中國時區

date.timezone = PRC

方法二:在php檔案中暫時設定為中國時區

date_default_timezone_set('PRC');

相關推薦:《PHP教學

#php取得目前時間、時間戳記

首先需要知道的是在php中取得時間方法是date(),在php中取得時間戳記方法有time()、strtotime()。以下分別說明:

date() 格式為:date($format, $timestamp),format為格式、timestamp為時間戳記(可選)。

time() 傳回目前時間的 Unix 時間戳,沒有參數。

strtotime($time, $now) 將任何英文文字的日期時間描述解析為 Unix 時間戳記。 $time 為必填,規定要解析的時間字串;$now 用來計算傳回值的時間戳,如果省略該參數,則使用目前時間。

date($format)用法範例:

echo date('Y-m-d');输出结果:2018-10-03
echo  date('Y-m-d H:i:s');输出结果:2018-10-03 23:00:00
echo  date('Y-m-d', time());输出结果:2018-10-03 23:00:00(结果同上,只是多了一个时间戳参数)
(时间戳转换为日期格式的方法)
echo  date('Y').'年'.date('m').'月'.date('d').'日',输出结果:2018年10月3日

舉例就這幾個,只是格式的變動而已,下面是字串格式中各個字母的意思:

a - "am" 或是"pm"  

A - "AM" 或是"PM"  

d - 幾日,二位數字,若不足二位則前面補零; 如: "01" 至"31"  

D - 星期幾,三個英文字母; 如: "Fri"  

F - 月份,英文全名;如: "January"  

h - 12 小時制的小時; 如: "01" 至"12"  

H - 24 小時制的小時; 如: "00" 至"23 "  

g - 12 小時制的小時,少於二位不補零; 如: "1" 至12"  

G - 24 小時制的小時,不足二位不補零; 如: "0" 至"23"  

i - 分鐘; 如: "00" 至"59"  

j - 幾日,二位數字,若不足二位不補零; 如: "1" 至"31"  

l - 星期幾,英文全名; 如: "Friday"  

m - 月份,二位數字,若不足二位則在前面補零; 如: "01" 至"12"  

n - 月份,二位數字,若不足二位則不補零; 如: "1" 至"12"  

M - 月份,三個英文字母; 如: "Jan"  

s - 秒; 如: "00" 至"59"  

S - 字尾加英文序數,二個英文字母; 如: "th","nd"  

t - 指定月份的天數; 如: "28" 至"31"  

U - 總秒數  

#w - 數位型的星期幾,如: "0" (星期日) 至"6" (星期六)  

Y - 年,四位數字; 如: "1999"  

# y - 年,二位數字; 如: "99"  

z - 一年中的第幾天; 如: "0" 至"365"

time()用法舉例:

time();输出结果:1332427715(返回的结果即当前的时间戳)
strtotime($time)用法举例:
echo strtotime('2012-03-22');输出结果:1332427715(此处结果为随便写的,仅作说明使用)
echo strtotime(date('Y-d-m'));输出结果:(结合date(),结果同上)(时间日期转换为时间戳)
strtotime()还有个很强大的用法,参数可加入对于数字的操作、年月日周英文字符,示例如下:
echo date('Y-m-d H:i:s',strtotime('+1 day'));输出结果:2012-03-23 23:30:33(会发现输出明天此时的时间)
echo date('Y-m-d H:i:s',strtotime('-1 day'));输出结果:2012-03-21 23:30:33(昨天此时的时间)
echo date('Y-m-d H:i:s',strtotime('+1 week'));输出结果:2012-03-29 23:30:33(下个星期此时的时间)
echo date('Y-m-d H:i:s',strtotime('next Thursday'));输出结果:2012-03-29 00:00:00(下个星期四此时的时间)
echo date('Y-m-d H:i:s',strtotime('last Thursday'));输出结果:2012-03-15 00:00:00(上个星期四此时的时间)

以上舉例就這麼多了,更多的自己去變通研究吧,strtotime()方法可以透過英文文本的控制Unix時間戳記的顯示,而得到需要的時間日期格式。

php取得目前時間的毫秒數

php本身並沒有提供一個回傳毫秒數的函數,但提供了microtime()方法,它會傳回一個數組,包含兩個元素:一個是秒數、一個是小數表示的毫秒數,我們可以透過此方法取得傳回的毫秒數,方法如下:

function getMillisecond(){
    list($s1,$s2)=explode(' ',microtime());
    return (float)sprintf('%.0f',(floatval($s1)+floatval($s2))*1000);

取的目前時間與實際時間相差8小時的解決方法

實際開發中經常會碰到獲取的時間與當前系統實際時間相差8個小時,這是因為時區設定問題,對於這個問題,有下面的幾個解決方法:

1.在php.ini中找到date.timezone,將它的值改為Asia/Shanghai,即date.timezone = Asia/Shanghai(將目前時區設為亞洲上海時區)

2.在程式開始的地方加入date_default_timezone_set('Asia/Shanghai');即可。

以上是php怎麼取得目前時間的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
php怎么把负数转为正整数php怎么把负数转为正整数Apr 19, 2022 pm 08:59 PM

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

php怎么实现几秒后执行一个函数php怎么实现几秒后执行一个函数Apr 24, 2022 pm 01:12 PM

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php怎么除以100保留两位小数php怎么除以100保留两位小数Apr 22, 2022 pm 06:23 PM

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

php字符串有没有下标php字符串有没有下标Apr 24, 2022 am 11:49 AM

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php怎么根据年月日判断是一年的第几天php怎么根据年月日判断是一年的第几天Apr 22, 2022 pm 05:02 PM

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

php怎么读取字符串后几个字符php怎么读取字符串后几个字符Apr 22, 2022 pm 08:31 PM

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

php怎么替换nbsp空格符php怎么替换nbsp空格符Apr 24, 2022 pm 02:55 PM

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\&nbsp\;||\xc2\xa0)/","其他字符",$str)”语句。

php怎么判断有没有小数点php怎么判断有没有小数点Apr 20, 2022 pm 08:12 PM

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱工具

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版