手机
当前位置:查字典教程网 >编程开发 >php教程 >PHP strtotime函数详解
PHP strtotime函数详解
摘要:先看手册介绍:strtotime—将任何英文文本的日期时间描述解析为Unix时间戳格式:intstrtotime(string$time[,...

先看手册介绍:

strtotime — 将任何英文文本的日期时间描述解析为 Unix 时间戳

格式:int strtotime ( string $time [, int $now ] )

本函数预期接受一个包含美国英语日期格式的字符串并尝试将其解析为 Unix 时间戳(自 January 1 1970 00:00:00 GMT 起的秒数),其值相对于 now 参数给出的时间,如果没有提供此参数则用系统当前时间。

本函数将使用 TZ 环境变量(如果有的话)来计算时间戳。自 PHP 5.1.0 起有更容易的方法来定义时区用于所有的日期/时间函数。此过程在 date_default_timezone_get() 函数页面中有说明。

Note : 如果给定的年份是两位数字的格式,则其值 0-69 表示 2000-2069,70-100 表示 1970-2000。

参数

time

被解析的字符串,格式根据 GNU » 日期输入格式 的语法。在 PHP 5.0 之前,time 中不允许有毫秒数,自 PHP 5.0 起可以有但是会被忽略掉。

now

用来计算返回值的时间戳。 该参数默认值是当前时间time(),也可以设置为其他时间的时间戳(我一直忽略的一个功能啊,惭愧)

返回值: 成功则返回间戳,否则返回 FALSE 。在 PHP 5.1.0 之前本函数在失败时返回 -1,后面版本返回false.

strtotime的第一个参数可以是我们常见的英文时间格式,比如“2008-8-20”或“10 September 2000 ”等等。也可以是以参数now为基准的时间描述,比如“+1 day”等等。

下面是后一种方式的可使用参数清单,其中“当前时间”是指strtotime第二个参数now的值,默认为当前时间

1.月,日英文名及其常用缩写清单:

january,february,march,april,may,june,july,august,september,sept,october,november,december,

sunday,monday,tuesday,tues,wednesday,wednes,thursday,thur,thurs,friday,saturday

2.时间参数和祥细描述:

am : the time is before noon上午

pm : the time is noon or later下午

year: one year; for example, “next year”年,比如“next year”代表明年

month : one month; for example, “last month”月,比如“last month”代表上一月

fortnight : two weeks; for example, “a fortnight ago”两周,比如“a fortnight ago”代表两周前

week : one week周

day: a day天

hour: an hour小时

minute : a minute分钟

min : same as minute同“minute”

second : a second 秒

sec : same as second同“second”

3.相关和顺序说明:

+n/-n :以当前时间算,加个减指定的时间,比如”+1 hour”是指当前时间加一小时

ago :time relative to now; such as “24 hours ago” 以当前时间往前算,比如”24 hours ago”代表“24小时前”

tomorrow : 24 hours later than the current date and time以当前时间(包括日期和时间)为标准,明天同一时间

yesterday : 24 hours earlier than the current date and time以当前时间(包括日期和时间)为标准,昨天同一时间

today : the current date and time当前时间(包括日期和时间)

now : the current date and time当前时间(包括日期和时间)

last : modifier meaning “the preceding”; for example, “last tuesday”代表“上一个”,比如“last tuesday”代表“上周二同一时间”

this : the given time during the current day or the next occurrence of the given time; for example, “this 7am” gives the timestamp for 07:00 on the current day, while “this week” gives the timestamp for one week from the current time当天的指定时间或下面一个时间段的时间戳,比如“this 7am”给出当天7:00的时间戳,而“this week”给出的是从当前时间开始的一整周的时间戳,也就是当前时间(经本人测试:strtotime('this week')=strtotime('now'));

next : modifier meaning the current time value of the subject plus one; for example, “next hour”当前时间加上指定的时间,比如“next hour”是指当前时间加上一小时,即加3600

//先到这,下面的还没时间翻译

first : ordinal modifier, esp. for months; for example, “May first” (actually, it's just the same as next)

third : see first (note that there is no “second” for ordinality, since that would conflict with the second time value)

fourth : see first

fifth : see first

sixth : see first

seventh : see first

eighth : see first

ninth : see first

tenth : see first

eleventh : see first

twelfth : see first

4.时区描述:

gmt : Greenwich Mean Time

ut : Coordinated Universal Time

utc : same as ut

wet : Western European Time

bst : British Summer Time

wat : West Africa Time

at : Azores Time

ast : Atlantic Standard Time

adt : Atlantic Daylight Time

est : Eastern Standard Time

edt : Eastern Daylight Time

cst : Central Standard Time

cdt : Central Daylight Time

mst : Mountain Standard Time

mdt : Mountain Daylight Time

pst : Pacific Standard Time

pdt : Pacific Daylight Time

yst : Yukon Standard Time

ydt : Yukon Daylight Time

hst : Hawaii Standard Time

hdt : Hawaii Daylight Time

cat : Central Alaska Time

akst : Alaska Standard Time

akdt : Alaska Daylight Time

ahst : Alaska-Hawaii Standard Time

nt : Nome Time

idlw : International Date Line West

cet : Central European Time

met : Middle European Time

mewt : Middle European Winter Time

mest : Middle European Summer Time

mesz : Middle European Summer Time

swt : Swedish Winter Time

sst : Swedish Summer Time

fwt : French Winter Time

fst : French Summer Time

eet : Eastern Europe Time, USSR Zone 1

bt : Baghdad Time, USSR Zone 2

zp4 : USSR Zone 3

zp5 : USSR Zone 4

zp6 : USSR Zone 5

wast : West Australian Standard Time

wadt : West Australian Daylight Time

cct : China Coast Time, USSR Zone 7

jst : Japan Standard Time, USSR Zone 8

east : Eastern Australian Standard Time

eadt : Eastern Australian Daylight Time

gst : Guam Standard Time, USSR Zone 9

nzt : New Zealand Time

nzst : New Zealand Standard Time

nzdt : New Zealand Daylight Time

idle : International Date Line East

在PHP中有个叫做strtotime的函数。strtotime 实现功能:获取某个日期的时间戳,或获取某个时间的时间戳。strtotime 将任何英文文本的日期时间描述解析为Unix时间戳[将系统时间转化成unix时间戳]

一,获取指定日期的unix时间戳

strtotime("2009-1-22") 示例如下:

1.echo strtotime("2009-1-22")

结果:1232553600

说明:返回2009年1月22日0点0分0秒时间戳

二,获取英文文本日期时间

示例如下:

便于比较,使用date将当时间戳与指定时间戳转换成系统时间

(1)打印明天此时的时间戳strtotime("+1 day")

当前时间:

1.echo date("Y-m-d H:i:s",time())

结果:2009-01-22 09:40:25

指定时间:

1.echo date("Y-m-d H:i:s",strtotime("+1 day"))

结果:2009-01-23 09:40:25

(2)打印昨天此时的时间戳strtotime("-1 day")

当前时间:

1.echo date("Y-m-d H:i:s",time())

结果:2009-01-22 09:40:25

指定时间:

1.echo date("Y-m-d H:i:s",strtotime("-1 day"))

结果:2009-01-21 09:40:25

(3)打印下个星期此时的时间戳strtotime("+1 week")

当前时间:

1.echo date("Y-m-d H:i:s",time())

结果:2009-01-22 09:40:25

指定时间:

1.echo date("Y-m-d H:i:s",strtotime("+1 week"))

结果:2009-01-29 09:40:25

(4)打印上个星期此时的时间戳strtotime("-1 week")

当前时间:

1.echo date("Y-m-d H:i:s",time())

结果:2009-01-22 09:40:25

指定时间:

1.echo date("Y-m-d H:i:s",strtotime("-1 week"))

结果:2009-01-15 09:40:25

(5)打印指定下星期几的时间戳strtotime("next Thursday")

当前时间:

1.echo date("Y-m-d H:i:s",time())

结果:2009-01-22 09:40:25

指定时间:

1.echo date("Y-m-d H:i:s",strtotime("next Thursday"))

结果:2009-01-29 00:00:00

(6)打印指定上星期几的时间戳strtotime("last Thursday")

当前时间:

1.echo date("Y-m-d H:i:s",time())

结果:2009-01-22 09:40:25

指定时间:

1.echo date("Y-m-d H:i:s",strtotime("last Thursday"))

结果:2009-01-15 00:00:00

以上示例可知,strtotime能将任何英文文本的日期时间描述解析为Unix时间戳,我们结合mktime()或date()格式化日期时间获取指定的时间戳,实现所需要的日期时间。

希望通过本文的介绍后,你已经能掌握strtotime函数用法。

【PHP strtotime函数详解】相关文章:

PHP4 与 MySQL 数据库操作函数详解

用PHP来写记数器(详细介绍)

PHP中is_file()函数使用指南

PHP4之COOKIE支持详解

PHP中iconv函数知识汇总

PHP SOCKET编程详解

PHP Reflection API详解

随机广告显示(PHP函数)

PHP SPL标准库之接口(Interface)详解

PHP中is_dir()函数使用指南

精品推荐
分类导航