Home  >  Article  >  Backend Development  >  Implementation code for converting time difference into string prompt in PHP

Implementation code for converting time difference into string prompt in PHP

高洛峰
高洛峰Original
2016-11-30 11:06:531061browse

如微博 
这看起来更加人性化,好吧,上代码 
 代码如下: 
class timeAgo 

static $timeagoObject; 
private $rustle; 
private $unit; 

private function __construct() 



private function __clone(){ } 
public static function getObject() 

if(! (self::$timeagoObject instanceof self) ) 
self::$timeagoObject = new timeAgo(); 

return self::$timeagoObject; 

private function count_int($unix_C) // main function 

if(! (isset($unix_C) || is_numeric($unix_C)) ) 
return 'don't find parameter'; 

$d = time()-$unix_C ; // $d - unix time difference value 
$d_int =(int)floor($d/60) ; // minimum unit -- minutes unix/60 

$this->unit = 0 ; // is minutes,hour or day? 

if($d_int < 60){ // minutes in one hour 3600 
$this->rustle = $d_int; 
$this->unit = 1; 

else if($d_int < 720){ //hour in one day 3600*12 
$this->rustle = floor($d_int/60); 
$this->unit = 2 ; 

else if($d_int < 7200){ //day in ten days 3600*12*10 
$this->rustle = floor($d_int/720); 
$this->unit = 3 ; 

else{ 
$this->rustle = $d ; 
$this->unit = 4 ; 


public function piece_str($C) 

$this->count_int($C); 

$u = ''; 
switch( $this->unit ) 

case 1: 
$u = 'minute'; 
break; 
case 2: 
$u = 'hour'; 
break; 
case 3: 
$u = 'day'; 
break; 
case 4: 
$u = ''; 
break; 
case 0: 
return 'sorry , get time is fail'; 

if($this->unit < 4) 

if($this->rustle > 1) 
return (string)$this->rustle.$u.'s ago'; 
else if($this->rustle == 1) 
return (string)$this->rustle.$u.'ago'; 
else 
return 'Just now'; 


/* example: $ago = timeAgo::getObject(); 
* echo $ago->piece_str($unix); 
* // 2 days ago 
*/ 

?> 

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn