通过字符获取时间戳
你可以使用strtotime()函数获取时间戳php把可读的字符转换成Unix时间戳PHP在把字符转换成时间戳方面是相当灵活的因此你可以插入各种各样的值来获取你想要的时间戳
这是一个简单例子
<?php
$mytime=strtotime(:pm June )
echo Today is date(Ymd g:i:sa $mytime)
?>
输出Today is ::pm
PHP在解释字符方面是相当灵巧的但不是完美的因此在你插入之前一定要测试你输入的字符使用englishlike instructions转化成需要的时间戳这是一个非常不错的方式你可以像下面这样做
$nextfriday=strtotime(next Friday) //下周五
$nextmonth=strtotime(+ Month) //从今天开始计算一个月以后的时间
$lastchristmas=strtotime( year dec ) //去年圣诞节
获取日期范围
strtotime返回的值被转换为数字我们能够用这些数字做基础运算我们可以用这些数字做很多非常有意思的事情比如你每周二需要教一门功课为期周你想得到你教科时间你能够做下面的事情
<?php
$startdate = strtotime(next Tuesday)
$enddate = strtotime(+ weeks $startdate)
$currentdate = $startdate;
echo <ol>;
while($currentdate < $enddate)
echo \t<li> date(M d $currentdate)
$currentdate = strtotime(+ week $currentdate)
endwhile;
echo </ol>;
?>
你将会得到如下的结果
Aug
Aug
Sep
Sep
Sep
Sep
Oct
Oct
Oct
Oct
Oct
Nov
Nov
Nov
Nov
Dec
注意一下这行$currentdate = strtotime(+ week $currentdate)在这行你会发现你需要指定一个时间戳做为第二个参数strtotime将使用这个参数代替默认时间戳(今天)并进行运算
到某一个日期的天数
使用计算器的时候我们会试图去计算到某一天的天数你很容易计算月份第四个星期四的时间戳
$someday = strtotime( weeks thursday November )
$daysUtilDate = ceil(($someday time())///)
echo There are $daysUtilDate until Thanksgiving;
首先我们开始计算感恩节日期(月号之后的第一个星期四之后的第个星期四)然后我们通过简单的算术计算出感恩节到当前时间之间的天数当我们进行比较运算的时候我们可以使用time()因为它返回到当前时间的纪元秒数
[] []