在PHP中将时间戳转换为时间,例如1天前,2天前...

在PHP中将时间戳转换为时间,例如1天前,2天前...

我试图转换格式的时间戳,2009-09-12 20:57:19并将其转换为类似于3 minutes agoPHP的东西。

我找到了一个有用的脚本来做到这一点,但我认为它正在寻找一种不同的格式作为时间变量。我想要修改以使用此格式的脚本是:

function _ago($tm,$rcs = 0) {
    $cur_tm = time(); 
    $dif = $cur_tm-$tm;
    $pds = array('second','minute','hour','day','week','month','year','decade');
    $lngh = array(1,60,3600,86400,604800,2630880,31570560,315705600);

    for($v = sizeof($lngh)-1; ($v >= 0)&&(($no = $dif/$lngh[$v])<=1); $v--); if($v < 0) $v = 0; $_tm = $cur_tm-($dif%$lngh[$v]);
        $no = floor($no);
        if($no <> 1)
            $pds[$v] .='s';
        $x = sprintf("%d %s ",$no,$pds[$v]);
        if(($rcs == 1)&&($v >= 1)&&(($cur_tm-$_tm) > 0))
            $x .= time_ago($_tm);
        return $x;
    }

我认为在前几行中脚本试图做一些看起来像这样的事情(不同的日期格式数学):

$dif = 1252809479 - 2009-09-12 20:57:19;

我如何将我的时间戳转换为(unix?)格式?


MMTTMM
浏览 942回答 4
4回答

一只甜甜圈

使用示例:echo time_elapsed_string('2013-05-01 00:22:35');echo time_elapsed_string('@1367367755'); # timestamp inputecho time_elapsed_string('2013-05-01 00:22:35', true);输入可以是任何支持的日期和时间格式。输出:4&nbsp;months&nbsp;ago 4&nbsp;months,&nbsp;2&nbsp;weeks,&nbsp;3&nbsp;days,&nbsp;1&nbsp;hour,&nbsp;49&nbsp;minutes,&nbsp;15&nbsp;seconds&nbsp;ago功能:function&nbsp;time_elapsed_string($datetime,&nbsp;$full&nbsp;=&nbsp;false)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;$now&nbsp;=&nbsp;new&nbsp;DateTime; &nbsp;&nbsp;&nbsp;&nbsp;$ago&nbsp;=&nbsp;new&nbsp;DateTime($datetime); &nbsp;&nbsp;&nbsp;&nbsp;$diff&nbsp;=&nbsp;$now->diff($ago); &nbsp;&nbsp;&nbsp;&nbsp;$diff->w&nbsp;=&nbsp;floor($diff->d&nbsp;/&nbsp;7); &nbsp;&nbsp;&nbsp;&nbsp;$diff->d&nbsp;-=&nbsp;$diff->w&nbsp;*&nbsp;7; &nbsp;&nbsp;&nbsp;&nbsp;$string&nbsp;=&nbsp;array( &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'y'&nbsp;=>&nbsp;'year', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'m'&nbsp;=>&nbsp;'month', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'w'&nbsp;=>&nbsp;'week', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'d'&nbsp;=>&nbsp;'day', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'h'&nbsp;=>&nbsp;'hour', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'i'&nbsp;=>&nbsp;'minute', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'s'&nbsp;=>&nbsp;'second', &nbsp;&nbsp;&nbsp;&nbsp;); &nbsp;&nbsp;&nbsp;&nbsp;foreach&nbsp;($string&nbsp;as&nbsp;$k&nbsp;=>&nbsp;&$v)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;($diff->$k)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$v&nbsp;=&nbsp;$diff->$k&nbsp;.&nbsp;'&nbsp;'&nbsp;.&nbsp;$v&nbsp;.&nbsp;($diff->$k&nbsp;>&nbsp;1&nbsp;?&nbsp;'s'&nbsp;:&nbsp;''); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unset($string[$k]); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(!$full)&nbsp;$string&nbsp;=&nbsp;array_slice($string,&nbsp;0,&nbsp;1); &nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$string&nbsp;?&nbsp;implode(',&nbsp;',&nbsp;$string)&nbsp;.&nbsp;'&nbsp;ago'&nbsp;:&nbsp;'just&nbsp;now';}

HUX布斯

function&nbsp;time_elapsed_string($ptime){ &nbsp;&nbsp;&nbsp;&nbsp;$etime&nbsp;=&nbsp;time()&nbsp;-&nbsp;$ptime; &nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;($etime&nbsp;<&nbsp;1) &nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;'0&nbsp;seconds'; &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;$a&nbsp;=&nbsp;array(&nbsp;365&nbsp;*&nbsp;24&nbsp;*&nbsp;60&nbsp;*&nbsp;60&nbsp;&nbsp;=>&nbsp;&nbsp;'year', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;30&nbsp;*&nbsp;24&nbsp;*&nbsp;60&nbsp;*&nbsp;60&nbsp;&nbsp;=>&nbsp;&nbsp;'month', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;24&nbsp;*&nbsp;60&nbsp;*&nbsp;60&nbsp;&nbsp;=>&nbsp;&nbsp;'day', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;60&nbsp;*&nbsp;60&nbsp;&nbsp;=>&nbsp;&nbsp;'hour', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;60&nbsp;&nbsp;=>&nbsp;&nbsp;'minute', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1&nbsp;&nbsp;=>&nbsp;&nbsp;'second' &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;); &nbsp;&nbsp;&nbsp;&nbsp;$a_plural&nbsp;=&nbsp;array(&nbsp;'year'&nbsp;&nbsp;&nbsp;=>&nbsp;'years', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'month'&nbsp;&nbsp;=>&nbsp;'months', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'day'&nbsp;&nbsp;&nbsp;&nbsp;=>&nbsp;'days', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'hour'&nbsp;&nbsp;&nbsp;=>&nbsp;'hours', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'minute'&nbsp;=>&nbsp;'minutes', &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'second'&nbsp;=>&nbsp;'seconds' &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;); &nbsp;&nbsp;&nbsp;&nbsp;foreach&nbsp;($a&nbsp;as&nbsp;$secs&nbsp;=>&nbsp;$str) &nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$d&nbsp;=&nbsp;$etime&nbsp;/&nbsp;$secs; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;($d&nbsp;>=&nbsp;1) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$r&nbsp;=&nbsp;round($d); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;$r&nbsp;.&nbsp;'&nbsp;'&nbsp;.&nbsp;($r&nbsp;>&nbsp;1&nbsp;?&nbsp;$a_plural[$str]&nbsp;:&nbsp;$str)&nbsp;.&nbsp;'&nbsp;ago'; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;}}

Cats萌萌

$time_elapsed&nbsp;=&nbsp;timeAgo($time_ago);&nbsp;//The&nbsp;argument&nbsp;$time_ago&nbsp;is&nbsp;in&nbsp;timestamp&nbsp;(Y-m-d&nbsp;H:i:s)format.//Function&nbsp;definitionfunction&nbsp;timeAgo($time_ago){ &nbsp;&nbsp;&nbsp;&nbsp;$time_ago&nbsp;=&nbsp;strtotime($time_ago); &nbsp;&nbsp;&nbsp;&nbsp;$cur_time&nbsp;&nbsp;&nbsp;=&nbsp;time(); &nbsp;&nbsp;&nbsp;&nbsp;$time_elapsed&nbsp;&nbsp;&nbsp;=&nbsp;$cur_time&nbsp;-&nbsp;$time_ago; &nbsp;&nbsp;&nbsp;&nbsp;$seconds&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;$time_elapsed&nbsp;; &nbsp;&nbsp;&nbsp;&nbsp;$minutes&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;round($time_elapsed&nbsp;/&nbsp;60&nbsp;); &nbsp;&nbsp;&nbsp;&nbsp;$hours&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;round($time_elapsed&nbsp;/&nbsp;3600); &nbsp;&nbsp;&nbsp;&nbsp;$days&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;round($time_elapsed&nbsp;/&nbsp;86400&nbsp;); &nbsp;&nbsp;&nbsp;&nbsp;$weeks&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;round($time_elapsed&nbsp;/&nbsp;604800); &nbsp;&nbsp;&nbsp;&nbsp;$months&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;round($time_elapsed&nbsp;/&nbsp;2600640&nbsp;); &nbsp;&nbsp;&nbsp;&nbsp;$years&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;=&nbsp;round($time_elapsed&nbsp;/&nbsp;31207680&nbsp;); &nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;Seconds &nbsp;&nbsp;&nbsp;&nbsp;if($seconds&nbsp;<=&nbsp;60){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"just&nbsp;now"; &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;//Minutes &nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if($minutes&nbsp;<=60){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($minutes==1){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"one&nbsp;minute&nbsp;ago"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"$minutes&nbsp;minutes&nbsp;ago"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;//Hours &nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if($hours&nbsp;<=24){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($hours==1){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"an&nbsp;hour&nbsp;ago"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}else{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"$hours&nbsp;hrs&nbsp;ago"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;//Days &nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if($days&nbsp;<=&nbsp;7){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($days==1){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"yesterday"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}else{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"$days&nbsp;days&nbsp;ago"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;//Weeks &nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if($weeks&nbsp;<=&nbsp;4.3){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($weeks==1){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"a&nbsp;week&nbsp;ago"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}else{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"$weeks&nbsp;weeks&nbsp;ago"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;//Months &nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if($months&nbsp;<=12){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($months==1){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"a&nbsp;month&nbsp;ago"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}else{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"$months&nbsp;months&nbsp;ago"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;//Years &nbsp;&nbsp;&nbsp;&nbsp;else{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if($years==1){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"one&nbsp;year&nbsp;ago"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}else{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;"$years&nbsp;years&nbsp;ago"; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;}}
打开App,查看更多内容
随时随地看视频慕课网APP