Rumah >pembangunan bahagian belakang >tutorial php >PHP获取当前的时间戳函数详细讲解

PHP获取当前的时间戳函数详细讲解

韦小宝
韦小宝asal
2018-02-22 10:03:5514082semak imbas

在PHP中有多种获取时间戳的方法,而通常获取到的时间都是unix时间戳和我们正常看到的时间是不一样的,那么我们还需要对此进行格式化一下,本篇文章讲的是PHP获取到当前时间和PHP对Unix时间戳的格式化,废话少说我们一起来看看吧!

PHP时间戳函数获取指定日期的unix时间戳 strtotime('2012-12-7')
示例如下:

代码如下:

<?php     echo strtotime(&#39;2012-12-7&#39;); //结果:1354838400 ?>

说明:返回2012年12月7日0点0分0秒时间戳。

将当前年月日转化为时间戳:PHP时间戳函数获取当前日期的unix时间戳,
示例如下:

 代码如下:

<?php     echo $time=intval(time()); ?>

明:返回当前时间 年月日时分秒的时间戳。
将时间戳转化为年月日:

代码如下:

<?php 
    echo date("Y-m-d H:i:s",intval(time())); 
?>

代码如下:

<?php 
echo strtotime ("now"), "n"; 
echo strtotime ("10 September 2000"), "n"; 
echo strtotime ("+1 day"), "n"; 
echo strtotime ("+1 week"), "n"; 
echo strtotime ("+1 week 2 days 4 hours 2 seconds"), "n"; 
echo strtotime ("next Thursday"), "n"; 
echo strtotime ("last Monday"), "n"; 
?>

PHP时间戳函数获取英文文本日期时间
便于比较,使用date将当时间戳与指定时间戳转换成系统时间

(1)打印明天此时的时间戳strtotime(”+1 day”)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”+1 day”)) 结果:2009-01-23 09:40:25

(2)打印昨天此时的时间戳strtotime(”-1 day”)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”-1 day”)) 结果:2009-01-21 09:40:25

(3)打印下个星期此时的时间戳strtotime(”+1 week”)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”+1 week”)) 结果:2009-01-29 09:40:25

(4)打印上个星期此时的时间戳strtotime(”-1 week”)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”-1 week”)) 结果:2009-01-15 09:40:25

(5)打印指定下星期几的时间戳strtotime(”next Thursday”)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”next Thursday”)) 结果:2009-01-29 00:00:00

(6)打印指定上星期几的时间戳strtotime(”last Thursday”)
当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25
指定时间:echo date(”Y-m-d H:i:s”,strtotime(”last Thursday”)) 结果:2009-01-15 00:00:00

 

1、获取当前时间方法date()
很简单,这就是获取时间的方法,格式为:date($format, $timestamp),format为格式、timestamp为时间戳--可填参数。
2、获取时间戳方法time()、strtotime()
这两个方法,都可以获取php中unix时间戳,time()为直接获取得到,strtotime($time, $now)为将时间格式转为时间戳,$time为必填。清楚了这个,想了解更多,请继续往下看。

3、 date($format)用法
比如:
echo date('Y-m-d') ,输出结果:2012-03-22
echo  date('Y-m-d H:i:s'),输出结果:2012-03-22 23:00:00
echo  date('Y-m-d', time()),输出结果:2012-03-22 23:00:00(结果同上,只是多了一个时间戳参数)(时间戳转换为日期格式的方法)
echo  date('Y').'年'.date('m').'月'.date('d').'日',输出结果:2012年3月22日
举例就这几个,只是格式的变通而已,下面是格式中各个字母的含义:

/**************格式中可使用字母的含义**************/
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" 

4、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时间戳的显示,而得到需要的时间日期格式。


5、php获取当前时间的毫秒数
php本身没有提供返回毫秒数的函数,但提供了microtime()方法,它会返回一个Array,包含两个元素:一个是秒数、一个是小数表示的毫秒数,我们可以通过此方法获取返回毫秒数,方法如下:

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

猜你可能感兴趣:

php DateTime的常用方法详解

本文对DateTime对象使用的方法进行了一些整理,方便大家查找和翻阅,有需要的可以参考学习。

PHP将DateTime对象转化为友好时间显示的实现代码

PHP将DateTime对象转化为友好时间显示的实现代码。复制代码 代码如下: ......

Atas ialah kandungan terperinci PHP获取当前的时间戳函数详细讲解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn