This article is mainly to share with you PHP timestamp function in detail, mainly in the form of code and we share, hope to help everyone.
echo "Doomsday timestamp:". Strtotime ("2012-12-21")
2. Convert timestamps to System time
Date (' y-m-d h:i:s ', "1228348800");
(1) Get time stamp of 0 points on the day
$timetoday = Strtotime (Date ("Y-m-d", Time ()));
(2) Get a 0 time stamp tomorrow.
$tomorrow = $timetoday + 3600*24;
3.PHP timestamp function Get the English text date time example is as follows:
Easy to compare, use date to convert time stamp to system time with specified timestamp
(1) Print the timestamp for tomorrow at this time Strtotime ("+1 Day")
The current time is echo date ("Y-m-d h:i:s", Time ()), or//tomorrow at this moment echo date ("Y-m-d h:i:s", Strtotime ("+1 Day"));
(2) Print the timestamp at this time yesterday Strtotime ("-1 day")
The current time echo date ("Y-m-d h:i:s", Time ()), or//Specify the date echo date ("Y-m-d h:i:s", Strtotime ("1 day"));
(3) Print timestamp strtotime ("+1 Week") at this time next week
Current time echo Date ("Y-m-d h:i:s", Time ()),//next week, Echo date ("Y-m-d h:i:s", Strtotime ("+1 Week"));
(4) Print timestamp strtotime ("1 week") at this time last week
The current time is echo date ("Y-m-d h:i:s", Time ());//Last week at this moment echo date ("Y-m-d h:i:s", Strtotime ("1 week"));
(5) Print the time stamp specified next week strtotime ("next Thursday")
The current time is echo date ("Y-m-d h:i:s", Time ()), and/or the next week, Echo date ("Y-m-d h:i:s", Strtotime ("next Thursday"));
(6) Print the timestamp strtotime ("last Thursday") specified on the previous day of the week
The current time is echo date ("Y-m-d h:i:s", Time ()), or//Specify the date echo date ("Y-m-d h:i:s", Strtotime ("last Thursday"));
The PHP timestamp Function example above shows that Strtotime can parse the datetime description of any English text into a Unix timestamp, and we get the specified timestamp by combining mktime () or date () to format the date time
Say to see someone else write a function, test it, there are some minor problems: for the cross-year date, not show the year. Modify the following
function mdate ($time = NULL) {$text = '; $time = $time = = = NULL | | $time > Time ()? Time (): Intval ($time); $t = Time ()-$time; The time difference (in seconds) $y = date (' y ', $time)-date (' Y ', Time ()),//Whether the cross-year switch ($t) {case $t = = 0: $text = ' just '; Break Case $t <: $text = $t. ' seconds ago '; Break in a minute; Case $t < *: $text = Floor ($t/60). ' Minutes ago '; Break within an hour; Case $t < *: $text = Floor ($t/(60 * 60)). ' Hour ago '; Break in one day; Case $t < * $ * 3: $text = Floor ($time/(60*60*24)) ==1? ' Yesterday '. Date (' H:i ', $time): ' The day before yesterday '. Date (' H:i ', $time); Yesterday and the day before the break; Case $t < * *: $text = date (' m ' D Day h:i ', $time); Break within one months; Case $t < * 365&& $y ==0: $text = Date (' m ' D Day ', $time); Break within a year; Default: $text = Date (' Y year m D Day ', $time); Break a year ago; } return $text;}
In thinkphp:
Place the written function under the Common folder. The system will load automatically.
Put it on this common.php page, common.php the native format, do not rename it.
Called directly in the template
{$vo. Time|mdate}
Example 2, a few simple
function FormatDate ($sTime) {//stime= source time, ctime= current time, dtime= difference $cTime = times (); $dTime = $cTime-$sTime; $dDay c2/>= intval (Date ("Ymd", $cTime))-Intval (Date ("Ymd", $sTime)); $dYear = intval (Date ("Y", $cTime))-Intval (date ("Y", $sTime)), if ($dTime <) { $dTime = $dTime. " Seconds ago "; }elseif ($dTime < 3600) { $dTime = intval ($dTime/60). " Minutes ago "; }elseif ($dTime >= 3600 && $dDay = = 0 ) { $dTime = "Today". Date ("H:i", $sTime);} ElseIf ($dYear ==0) { $dTime = date ("M-d h:i", $sTime);} else{ $dTime = date ("Y-m-d h:i", $sTime);} return $dTime;}
Here is a friendly time to send you a method
/** * Friendly time display * @param $time * @return bool|string */function friend_date ($time) {if (! $time) return false; $fdate = "; $d = Time ()-intval ($time); $ld = $time-mktime (0, 0, 0, 0, 0, date (' Y ')); The Year $MD = $time-mktime (0, 0, 0, date (' m '), 0, date (' Y ')); Draw the Month $byd = $time-mktime (0, 0, 0, date (' m '), date (' d ')-2, date (' Y ')); The day before yesterday $yd = $time-mktime (0, 0, 0, date (' m '), date (' d ')-1, date (' Y ')); Yesterday $dd = $time-mktime (0, 0, 0, date (' m '), date (' d '), date (' Y ')); Today $TD = $time-mktime (0, 0, 0, date (' m '), date (' d ') + 1, date (' Y ')); Tomorrow $atd = $time-mktime (0, 0, 0, date (' m '), date (' d ') + 2, date (' Y ')); The acquired if ($d = = 0) {$fdate = ' just '; } else {switch ($d) {case $d < $atd: $fdate = date (' Y year m D Day ', $time); Break Case $d < $td: $fdate = ' The day After Tomorrow '. Date (' H:i ', $time); Break Case $d < 0: $fdate = ' tomorrow '. DatE (' h:i ', $time); Break Case $d <: $fdate = $d. ' seconds ago '; Break Case $d < 3600: $fdate = Floor ($d/60). ' Minutes ago '; Break Case $d < $dd: $fdate = Floor ($d/3600). ' Hour ago '; Break Case $d < $yd: $fdate = ' Yesterday '. Date (' H:i ', $time); Break Case $d < $byd: $fdate = ' The day before yesterday '. Date (' H:i ', $time); Break Case $d < $md: $fdate = Date (' M-D-Day h:i ', $time); Break Case $d < $ld: $fdate = Date (' m ' D Day ', $time); Break Default: $fdate = Date (' Y year m D Day ', $time); Break }} return $fdate;}